要做到從指定行所有行(包括定行)的總和,你行變量需要減去1.如果是獨佔該行然後只使用按原樣變化。使用...打開文件以使其自動關閉並選擇讀取('r')作爲模式。創建一個變量來存儲這些行並選擇readlines()。這將每行存儲在列表中自己的位置。
創建另一個變量來實際地總和這些行。使用一個while循環與給定的起始行變量相關聯,只要它小於列表的長度,遍歷列表並將每行添加到sum變量(如使用nums所示)。
由於open()是如何讀取行的,因此它會在\ end中將其全部作爲字符串進行抽取。添加條('\ n')以刪除\ n並將其全部轉換爲整數。將1添加到行變量中,以正確迭代並結束循環。
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
如果你想要做的只是下面給定行一定數量的線條,添加此額外數量的功能,然後行變量添加到這個額外的變量之前從行變量中減去1。而不是迭代列表的長度,在你結束時使用這個修改的額外變量。
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
同樣,如果你不想包含給定的線,就不要減1
謝謝你,我會至三出來 –