假设我有文本文件:
apple
banana
fruit
我怎么能这样做:
1.apple
2.banana
3.fruit
有没有办法在python中执行此操作?
myfile=open("dates.txt","a")
for i in range(14):
myfile.write(i)
myfile.write("\n")
答案 0 :(得分:1)
我使用fileinput.input()
及其inplace
参数来执行此类任务。利用Python3.6' f-strings,这是一个完整的例子:
import fileinput
for i, line in enumerate(fileinput.input(inplace=True), 1):
print(f'{i}.{line.rstrip()}')
样本用法:
$ cat groceries.txt
apple
banana
fruit
$ python3 numberize.py groceries.txt
$ cat groceries.txt
1.apple
2.banana
3.fruit
$
答案 1 :(得分:0)
首先打开您的文件并使用readlines()
读取每一行以返回一致的列表。然后通过你的列表反复给你一个变量你希望给它的数字。将i的值(作为字符串)添加到所需的。,通过切片写入现有文件,添加部分列表。
with open('first.txt') as pri:
a = pri.splitlines()
for i in range(1, len(a)+1):
part = str(i) + '.'
with open('first.txt', 'w') as file:
file.write(part + a[i-1])