différence entre readlines() et split() [python]
imaginer que nous avons un file = open("filetext.txt", 'r')
quelle est la différence entre la méthode split() et le readlines() la méthode
Il semble que les deux découpage de chaque ligne et de le mettre comme une chaîne dans une liste.
donc, en quoi sont-ils différents ?
for line in file:
values = line.split() #break each line into a list
file.readlines() #return a list of strings each represent a single line in the file
OriginalL'auteur Mozein | 2015-02-24
Vous devez vous connecter pour publier un commentaire.
readlines
divise le fichier en entier dans les lignes et est équivalent àfile.read().split('\n')
, mais est un peu plus efficace. Votre exemple,divise chaque ligne par ses espaces, la construction d'une liste de mots dans la ligne.
value
est écrasé à chaque itération, de sorte que si vous enregistrez les valeurs quelque part, seulement les pièces du dossier sont en mémoire à un moment unique.OriginalL'auteur tdelaney
C'est la principale différence:
Un
file
objet areadlines
mais passplit
:Un
str
objet asplit
mais pasreadlines
:Et pour répondre à votre question, on opère sur un objet de type string et on opère sur un objet de fichier.
Ils ne font pas la même chose puisque l'on retourne une liste de lignes lors de l'utilisation sur un fichier et retourne une ligne de séparation lors de l'utilisation sur une chaîne.
readlines
ne pas prendre des arguments et ne peut briser sur les retours à la ligne. Sur l'autre main,split
peut prendre des arguments et peut se diviser sur aucun caractère que vous lui dites de split. En outre,split
n'a pas à se diviser sur tous choix mais peut être limité.OriginalL'auteur Reut Sharabani
readlines
n'plate-forme agnostique de la ligne de fractionnement et desplit
générique de fractionnement.Comme un exemple:
OriginalL'auteur ferhat elmas