Maison > développement back-end > Tutoriel Python > Pourquoi est-ce que j'obtiens « TypeError : les indices de liste doivent être des entiers ou des tranches, pas une chaîne » lors de la fusion de listes dans un CSV ?

Pourquoi est-ce que j'obtiens « TypeError : les indices de liste doivent être des entiers ou des tranches, pas une chaîne » lors de la fusion de listes dans un CSV ?

Barbara Streisand
Libérer: 2024-12-01 21:12:12
original
222 Les gens l'ont consulté

Why Am I Getting

TypeError : les indices de liste doivent être des entiers ou des tranches, pas des str

Dans cette erreur, vous rencontrez un problème avec votre code qui fusionne deux répertorie dans un tableau et l'écrit dans un fichier CSV. Le message d'erreur indique que vous essayez d'indexer une liste à l'aide d'une chaîne, ce qui n'est pas autorisé.

Pour résoudre ce problème, suivez les étapes décrites dans la solution fournie :

  1. Convertir array_length à un entier. Au lieu de array_length = str(len(array_dates)), utilisez array_length = len(array_dates).
  2. Utilisez une fonction range dans votre boucle for. Au lieu de for i in array_length, utilisez for i in range(array_length).
  3. Supprimez la ligne d'incrémentation i = 1 car elle incrémentera automatiquement.

Approche alternative utilisant Zip :

Au lieu de la méthode que vous avez utilisée, vous pouvez profiter de la fonction zip de Python pour combiner les éléments des deux listes en paires, qui peuvent ensuite être écrites directement dans le fichier CSV.

import csv

dates = ['2020-01-01', '2020-01-02', '2020-01-03']
urls = ['www.abc.com', 'www.cnn.com', 'www.nbc.com']

csv_file_patch = '/path/to/filename.csv'

with open(csv_file_patch, 'w') as fout:
    csv_file = csv.writer(fout, delimiter=';', lineterminator='\n')
    result_array = zip(dates, urls)
    csv_file.writerows(result_array)
Copier après la connexion

En implémentant ces modifications, vous pouvez fusionner vos listes et écrire le tableau résultant dans le fichier CSV sans rencontrer l'erreur TypeError.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal