繁体   English   中英

使用Python读取和编辑文本文件中的一行

[英]Read and Edit a single line in a text file with Python

我花了很长时间在这里寻找解决方案,但是作为Python的新手,我陷入了困境。 我认为我的问题很容易解决,但是任何帮助都会很棒。

如果我有一个包含以下内容的文本文件:

Name1, 12, 32
Name2, 49, 43
Name3, 43, 13
Name4, 43, 53

我知道我想将43中的第二个Name2替换为10。如何在Python中显示Name2数据,对其进行编辑,然后将其放回文本文件中?

无论如何,它还是让Python告诉您文本文件Name2中的哪一行在行(例如,它在第2行)?

请-最简单的解决方案!!! 谢谢 。

在出现Name1打印:

import csv

with open("path/to/file") as infile:
    for i, (name, *data) in enumerate(csv.reader(infile), 1):
        if name != "Name1": continue
        print("'Name1' found on line", i)

替换与其关联的数据:

with open("path/to/file") as infile, open("path/to/output", 'w') fout:
    outfile = csv.writer(fout)
    for i, (name, first, second) in enumerate(csv.reader(infile), 1):
        if name == "Name1":
            second -= 33
        outfile.writerow([name, first, second])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM