Quelqu'un peut-il expliquer cette erreur? AttributeError: 'liste' de l'objet n'a pas d'attribut "coder'

De la recherche que j'ai fait, ce code doit écrire du texte dans un fichier CSV.

import csv
name = "X"
score = "Y"
with open('some.csv', 'wb') as f:
    writer = csv.writer(f)
    data = [["Name", "Score"],
            [name,score]]
    f.write(data[0].encode('utf-8'))        
    writer.writerows(data)

Au premier abord, il m'a jeté une erreur de codage. Après la chasse autour de Débordement de Pile, j'ai trouvé quelque chose sur la nécessité de coder le texte en UTF8. J'ai donc essayé d'encodage avec X. encode(). Ensuite, j'ai obtenu ceci:

f.write(data[0].encode('utf-8'))
AttributeError: 'list' object has no attribute 'encode'

Je ne peux pas trouver une réponse quant à pourquoi ce qui se passe. Quelqu'un peut-il expliquer pourquoi j'obtiens cette erreur?

  • data[0] est ["Name", "Score"] pas une chaîne.
InformationsquelleAutor Roughbladez | 2015-04-22