Pour faire la somme de toutes les lignes (y compris la ligne donnée) de la ligne désignée, vous en ligne variable doit soustraire 1. Si elle est exclusive de cette ligne, puis il suffit d'utiliser la variable telle quelle. Ouvrez le fichier en utilisant avec ... pour le fermer automatiquement et choisissez read ('r') comme mode. Créez une variable pour stocker les lignes et choisissez readlines(). Cela stocke chaque ligne à sa place dans une liste.
Créez une autre variable pour additionner les lignes. En utilisant une boucle while associée à la variable de ligne de départ donnée, tant qu'elle est inférieure à la longueur de votre liste, parcourez la liste en ajoutant chaque ligne à votre variable sum (comme indiqué en utilisant nums). En raison de la façon dont open() lit les lignes, il les tire toutes comme des chaînes avec \ n à la fin. Ajoutez strip ('\ n') pour supprimer le \ n et convertissez le tout en entier. Ajoutez 1 à votre variable de ligne pour correctement itérer et terminer la boucle.
def example(file_name, line):
with open(file_name, 'r') as f:
x = f.readlines()
line = line - 1
nums = 0
while line < len(x):
nums += int(x[line].strip('\n'))
line += 1
print(nums)
example("example.txt", 4)
# My example.txt file has a different number on each line in this order: 2, 4, 3, 7, 5, 6, 4
Si vous voulez faire seulement un certain nombre de lignes suivant la ligne donnée, ajouter ce numéro supplémentaire à la fonction, puis ajouter la variable de ligne à cette variable supplémentaire avant de soustraire 1 de la variable de ligne. Au lieu d'itérer la longueur de la liste, utilisez cette variable supplémentaire modifiée lorsque vous terminez.
def example(file_name, line, end_line):
with open(file_name, 'r') as f:
x = f.readlines()
end_line += line
line = line - 1
nums = 0
while line < end_line:
nums += int(x[line].strip('\n'))
line += 1
print(nums)
example("example.txt", 4, 2)
# My example.txt file has a different number on each line in this order: 2, 4, 3, 7, 5, 6, 4
Encore une fois, si vous ne voulez pas la ligne donnée inclus, ne pas soustraire 1.
Merci que je tri it out –