gpt4 book ai didi

python - 写入文件并维护语法

转载 作者:太空宇宙 更新时间:2023-11-03 19:10:08 24 4
gpt4 key购买 nike

很久之后才开始使用python:

基本上我正在尝试从文件中读取一行:

MY_FILE                     ='test1.hgx'

最终我想用以下内容更改此 test1.hgx:

test1_para1_para2_para3.hgx

其中para1,23是我要写入的参数。

我在下面写了一段代码

add_name= '%s'%(filename)+'_'+'%s'%(para1)+'_'+'%s'%(para2)+'_'+'%s'%(para3)+'.hgx'
print "added_name:",add_name

with open(filename) as f: lines = f.read().splitlines()
with open(filename, 'w') as f:
for line in lines:
if line.startswith(' MY_FILE'):

f.write(line.rsplit(' ', 1)[0] + "\'%s'\n"%add_name)
else:
f.write(line + '\n')
f.close

上面的代码按预期工作,并在我执行一次 python 代码时写出:

MY_FILE                     ='test1_01_02_03.hgx'

但是,当我第二次运行 python 代码时,它会吃掉“=”并写入以下内容:

MY_FILE                     'test1_01_02_03.hgx'

我可以在现有代码中添加一些内容,以始终保留“test1_01_02_03.hgx”的写入吗?我认为有问题:

f.write(line.rsplit(' ', 1)[0] + "\'%s'\n"%add_name)

但是我无法找出问题所在。任何想法都会有帮助。谢谢。

最佳答案

更改:

        f.write(line.rsplit(' ', 1)[0] + "\'%s'\n"%add_name)

        f.write(line.rsplit('=', 1)[0] + "=\'%s'\n"%add_name)

顺便问一下,你确定在原始文件中,=后面没有空格吗?如果 = 后面没有空格,则此代码将始终吃掉 =。如果有空格,直到第二次运行代码时才会将其吃掉。

关于python - 写入文件并维护语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13263617/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com