python - 将文本(单个字母)附加到文本文件中每一行的末尾

标签 python csv text

下面是我正在使用的文本文件的示例:

437868313,2436413,Wyatt,Trenton,08/21/2003,211000010262002,211000010262002,2014,01,54435A000,510,Social Studies (Grade 5),08/14/2013,5-2,02,0,02,02,01,,,,,,100,05/29/2014,
437868313,2436413,Wyatt,Trenton,08/21/2003,211000010262002,211000010262002,2014,01,53235A000,500,Science (Grade 5),08/14/2013,5-2,02,0,02,02,01,,,,,,100,05/29/2014,
437868313,2436413,Wyatt,Trenton,08/21/2003,211000010262002,211000010262002,2014,01,58035A000,560,Physical Education (Grade 5),08/14/2013,5-2,02,0,02,02,01,,,,,,1,05/29/2014,

我试图在每一行的末尾简单地添加字母“S”。所以,上面,总共有 3 条记录。在 2014 年 5 月 29 日之后,我想插入 S。所以每条记录看起来像:

437868313,2436413,Wyatt,Trenton,08/21/2003,211000010262002,211000010262002,2014,01,54435A000,510,Social Studies (Grade 5),08/14/2013,5-2,02,0,02,02,01,,,,,,100,05/29/2014,S

我意识到转换为 CSV 并使用 excel 非常简单,但是在传输回 txt 时我遇到了各种格式问题。想用 python 尝试一下。我正在尝试使用追加,据我所知,写入将覆盖我现有的文件:

myFile = open("myFile.txt", "a")
    for line in myFile:
        myFile.write('S')

我不经常使用 python,我想知道如何为它编制索引,以便它从第 2 行开始,并在逗号之后附加该行的末尾,就像我上面提到的那样。

最佳答案

您需要逐行读取文件,然后再次逐行输出。这比使用 CSV 甚至电子表格处理软件要简单得多,这让我很害怕。

with open('input.txt', 'r') as istr:
    with open('output.txt', 'w') as ostr:
        for i, line in enumerate(istr):
            # Get rid of the trailing newline (if any).
            line = line.rstrip('\n')
            if i % 2 == 0:
                line += 'S'
            print(line, file=ostr)

如果您仍在使用 Python 2,请使用

ostr.write(line + '\n')

而不是 print

更新:如果您想附加到每一(而不是每一行),只需使用:

with open('input.txt', 'r') as istr:
    with open('output.txt', 'w') as ostr:
        for line in istr:
            line = line.rstrip('\n') + 'S'
            print(line, file=ostr)

关于python - 将文本(单个字母)附加到文本文件中每一行的末尾,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25923186/

相关文章:

linux - 使用 bash 根据逗号分隔文件中的列标题提取值

javascript - Firefox 笔划文本锯齿状伪影

python - 使用 Gmail API 在 html 中检索电子邮件/消息正文

java - 在java中解析CSV文件,并处理空值

python - Scrapy只返回第一个结果

PHP:下载 MySQL 表

android Staticlayout 绘制文字模糊

python - 在 Bio Entrez pubmed 中使用 python 过滤/访问日期

python - FileNotFoundError [Errno 2] 没有这样的文件或目录 :

python - 在Python中通过拆分另一个列表的索引来创建列表可能吗?