用python编写key=value1,….valuen格式的文件
我有一个现有文件/tmp/ps/snaps.txt 它有以下数据:用python编写key=value1,….valuen格式的文件,python,Python,我有一个现有文件/tmp/ps/snaps.txt 它有以下数据: key=default_value 我希望此文件的内容为: key=default_value,value,value.....valuen 我的代码是(每次主python代码运行时都会运行): 但我得到的结果是: key=default_value, value,value.....value 基本上我不希望我的价值观写在下一行, 有什么解决方法吗?原始文件末尾的行终止符阻止您追加到同一行 您有3种选择: 删除该行终止符
key=default_value
我希望此文件的内容为:
key=default_value,value,value.....valuen
我的代码是(每次主python代码运行时都会运行):
但我得到的结果是:
key=default_value,
value,value.....value
基本上我不希望我的价值观写在下一行,
有什么解决方法吗?原始文件末尾的行终止符阻止您追加到同一行 您有3种选择:
str.rstrip()
)并写入内容+额外内容。如果您能够为现有内容提供内存+读取开销,这是最稳定的选项选项2是一种黑客行为,因为它试图以读/写方式编辑文本文件,虽然不是很好,但证明了它是可以做到的。您需要的是将文件内容加载到合适的数据结构中,插入新值并再次将该数据写入文件,您不应该尝试在适当的位置更改文件内容。
key=default_value,
value,value.....value
with open(filename, "a+") as text_file:
text_file.seek(os.path.getsize(filename)-len(os.linesep))
text_file.write("{},\n".format(snapshot_name))
with open(filename,"r") as text_file:
contents = text_file.read().rstrip()
with open(filename,"w") as text_file:
text_file.write(contents)
text_file.write("{},".format(snapshot_name))