为了账号安全,请及时绑定邮箱和手机立即绑定

在行首添加特定字符串的字符

在行首添加特定字符串的字符

慕雪6442864 2023-10-06 13:45:48
我有一个包含几千行的文件,如下所示:0.5  AA2.7 AA45.2 AA567.1 CC667.5 AA 4456 AA1005.2 CC我想在每行包含字符串“CC”的开头添加注释符号“//”。我有这样的代码:import fileinputfile_name = input("file path: ")for line in fileinput.FileInput(file_name, inplace=1):    if 'CC' in line:        line = line.rstrip()        line = line.replace(line,'// '+line)    print (line)一切正常,但执行代码后文件看起来像这样:0.5  AA2.7 AA    45.2 AA    // 567.1 CC667.5 AA    4456 AA    // 1005.2 CC为什么执行代码后我在行后有新的行空格而没有更改?我怎样才能删除这个?第二个问题是:我如何将此文件另存为新文件?总结:我需要编写代码,在 txt 文件中将“//”添加到包含“CC”的每一行的开头,并将其保存为新文件。
查看完整描述

4 回答

?
慕斯709654

TA贡献1840条经验 获得超5个赞

这个解决方案效果很好,您对此有何看法?


filepath = input("original file :")

filepath2 = input("result file : ")


with open(filepath, "r") as f, open(filepath2, "w") as f2:

    for line in f:

        f2.write(line if not 'CC' in line else "//" + line)


查看完整回答
反对 回复 2023-10-06
?
开心每一天1111

TA贡献1836条经验 获得超13个赞

这似乎是您的输入文件中的字符问题。也许.strip()反而.rstrip()会效果更好。.rstrip()仅删除字符串右侧的空格,同时.strip()删除左侧和右侧的空格。像这样的东西应该有效:


inputFile = open('data.txt', 'r')

outputFile = open('outputFile.txt', 'w')


for line in inputFile:


    outputLine = line.strip() + '\n'

    if 'CC' in line:

        outputLine = '//' +  outputLine

    outputFile.write(outputLine)

 

inputFile.close()

outputFile.close()


查看完整回答
反对 回复 2023-10-06
?
SMILET

TA贡献1796条经验 获得超4个赞

这是一个解决方案:


p="name_of_original_file.txt"

file=open(p,"r")

s=file.read()

file.close() 


new_s=""

for line in s.splitlines():

    if 'CC' not in line:

        new_s+=line+"\n"

    if 'CC' in line:

        new_s+='// '+line+"\n"

    print (line)


p="name_of_new_file.txt"

file=open(p,"w")

file.write(new_s)

file.close()


查看完整回答
反对 回复 2023-10-06
?
猛跑小猪

TA贡献1858条经验 获得超8个赞

额外的新行是由于文件行中已存在“\n”字符,您可以通过更改为来防止这种情况

print(line, end='')

我不知道为什么你更喜欢文件输入模块来读取文件,因为我发现默认方法 open 非常令人满意,因为你可以读写文本文件,二进制文件等......至于你的问题:

with open(file_name, 'w') as file:
    file.write(data)


查看完整回答
反对 回复 2023-10-06
  • 4 回答
  • 0 关注
  • 128 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信