Comment puis-je imprimer uniquement les 10 premières lignes d'un fichier csv à l'aide de Python?
Je suis nouveau sur Python et je suis désireux d'imprimer uniquement les 10 premières lignes d'un énorme fichier csv.
Voici mon code si loin que les tirages de toutes les lignes dans le fichier csv
import csv
with open('titanic.csv') as csvfile:
reader = csv.DictReader(csvfile)
for row in reader:
print(row['survived'], row['pclass'], row['name'], row['sex'], row['age'])
OriginalL'auteur Adorabubble | 2016-05-07
Vous devez vous connecter pour publier un commentaire.
Vous pouvez simplement
break
au bout de 10 lignes.OriginalL'auteur Adrien El Zein
Utilisation
itertools.islice
:Pendant que vous y êtes, vous pouvez également faire usage de
operator.itemgetter
pour rendre la colonne d'obtenir un peu plus facile:islice
est exagéré quand tout ce qu'on doit faire est de compter les lignes lues jusqu'à présent...peut-être - mais pourquoi aller à l'effort de le faire lorsque vous n'en avez pas besoin? Il isole également la logique de la
for
et si jamais vous avez ensuite besoin de décalage à partir du début ou introduire pas à pas, alors vous n'êtes pas introduire de plus logique pour unif
ou de faire le module etc... (pour ne pas mentionner - à l'aide deislice
peut évidemment faire son travail au niveau C dans Disponible)for i in range(10):
isole aussi la logique et est écrit en C.OriginalL'auteur Jon Clements
Adrien El Zein réponse est assez pour votre question. Toutefois, si vous pensez que c'est quelque peu à confusion (je ne le pense pas):
Je me suis contenté de renommer la variable
i
àcounter
. Aussi, pour une autre boucle:J'ai essayé et testé le
while-else
boucle à l'aide de Python 3.4.3 (pas sûr de la version que vous avez) et peux vous dire que cela fonctionne correctement.OriginalL'auteur d3dc0d