Maison > développement back-end > Tutoriel Python > Exemple de partage de code sur la façon dont Python fonctionne sur les fichiers Csv (image)

Exemple de partage de code sur la façon dont Python fonctionne sur les fichiers Csv (image)

黄舟
Libérer: 2017-05-14 12:01:17
original
1393 Les gens l'ont consulté

Cet article présente principalement l'exemple de code d'utilisation de Python pour faire fonctionner les fichiers Csv. C'est très pratique. Les amis dans le besoin peuvent s'y référer

csv est l'abréviation de Virgule-. Valeurs séparées. Les données du Tableau sont stockées sous forme de fichiers texte. Par exemple, le tableau suivant :

peut être stocké sous forme de fichier csv. Le contenu du fichier est :

No.,Name,Age,Score
1,mayi,18,99
2,jack,21,89
3,tom,25,95
4,rain,19,80
Copier après la connexion

Supposons que le fichier csv ci-dessus soit enregistré sous "test.csv"

1 Lisez le fichier

<🎜. >Comment utiliser Python pour extraire une des colonnes comme en utilisant Excel , c'est-à-dire un champ En utilisant le module csv fourni avec Python, il existe deux façons de l'implémenter :

La première méthode utilise le lecteur. La

fonction pour recevoir un objet itérable (comme un fichier csv) peut renvoyer un générateur , à partir duquel le contenu du csv peut être analysé : Par exemple, le code suivant peut lire tout le contenu du csv et se comporter comme Unité :

#!/usr/bin/python3
# -*- conding:utf-8 -*-
author = &#39;mayi&#39;

import csv

#读
with open("test.csv", "r", encoding = "utf-8") as f:
  reader = csv.reader(f)
  rows = [row for row in reader]

print(rows)
Copier après la connexion
Get :

[[&#39;No.&#39;, &#39;Name&#39;, &#39;Age&#39;, &#39;Score&#39;],
 [&#39;1&#39;, &#39;mayi&#39;, &#39;18&#39;, &#39;99&#39;],
 [&#39;2&#39;, &#39;jack&#39;, &#39;21&#39;, &#39;89&#39;],
 [&#39;3&#39;, &#39;tom&#39;, &#39;25&#39;, &#39;95&#39;],
 [&#39;4&#39;, &#39;rain&#39;, &#39;19&#39;, &#39;80&#39;]]
Copier après la connexion
Pour extraire une des colonnes, vous peut utiliser le code suivant :

#!/usr/bin/python3
# -*- conding:utf-8 -*-
author = &#39;mayi&#39;

import csv

#读取第二列的内容
with open("test.csv", "r", encoding = "utf-8") as f:
  reader = csv.reader(f)
  column = [row[1] for row in reader]

print(column)
Copier après la connexion
Get :

[&#39;Name&#39;, &#39;mayi&#39;, &#39;jack&#39;, &#39;tom&#39;, &#39;rain&#39;]
Copier après la connexion
Notez que toutes les données lues à partir de csv sont de type str. Cette méthode nécessite de connaître le numéro de colonne à l'avance, par exemple, le nom est dans la colonne 2 et ne peut pas être interrogé en fonction du titre

de « Nom ». À ce stade, vous pouvez utiliser la deuxième méthode : La deuxième méthode consiste à utiliser DictReader, qui est similaire à la fonction reader. Elle reçoit un objet itérable et peut renvoyer un générateur, mais chaque cellule renvoyée est placée. Dans la valeur d'un dictionnaire, la clé de ce dictionnaire est le titre (c'est-à-dire l'en-tête de colonne) de cette cellule. Vous pouvez voir la structure de DictReader avec le code suivant :

Obtenir :
# -*- conding:utf-8 -*-
author = &#39;mayi&#39;

import csv

#读
with open("test.csv", "r", encoding = "utf-8") as f:
  reader = csv.DictReader(f)
  column = [row for row in reader]

print(column)
Copier après la connexion

Si nous voulons utiliser DictReader pour lire une certaine colonne de csv, nous pouvons utiliser le Requête de titre de colonne :
[{&#39;No.&#39;: &#39;1&#39;, &#39;Age&#39;: &#39;18&#39;, &#39;Score&#39;: &#39;99&#39;, &#39;Name&#39;: &#39;mayi&#39;},
 {&#39;No.&#39;: &#39;2&#39;, &#39;Age&#39;: &#39;21&#39;, &#39;Score&#39;: &#39;89&#39;, &#39;Name&#39;: &#39;jack&#39;},
 {&#39;No.&#39;: &#39;3&#39;, &#39;Age&#39;: &#39;25&#39;, &#39;Score&#39;: &#39;95&#39;, &#39;Name&#39;: &#39;tom&#39;},
 {&#39;No.&#39;: &#39;4&#39;, &#39;Age&#39;: &#39;19&#39;, &#39;Score&#39;: &#39;80&#39;, &#39;Name&#39;: &#39;rain&#39;}]
Copier après la connexion

Obtenir :
#!/usr/bin/python3
# -*- conding:utf-8 -*-
author = &#39;mayi&#39;

import csv

#读取Name列的内容
with open("test.csv", "r", encoding = "utf-8") as f:
  reader = csv.DictReader(f)
  column = [row[&#39;Name&#39;] for row in reader]
print(column)
Copier après la connexion

[&#39;mayi&#39;, &#39;jack&#39;, &#39;tom&#39;, &#39;rain&#39;]
Copier après la connexion
2. Écrire le fichier

Lors de la lecture du fichier, nous lisons le fichier csv. dans la liste, lors de l'écriture d'un fichier, les éléments de la liste seront écrits dans le fichier csv.

Obtenez :
#!/usr/bin/python3
# -*- conding:utf-8 -*-
author = &#39;mayi&#39;

import csv

#写:追加
row = [&#39;5&#39;, &#39;hanmeimei&#39;, &#39;23&#39;, &#39;81&#39;]
out = open("test.csv", "a", newline = "")
csv_writer = csv.writer(out, dialect = "excel")
csv_writer.writerow(row)
Copier après la connexion

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!

Étiquettes associées:
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal