繁体   English   中英

Python - 写入文件时删除最后一个字符

[英]Python - remove last character when writing to a file

我正在将 dict 变量写入文本文件

for key, value in dict.items():
   input_file.write("%s:%s\n" % (key, value))

如何从生成的文件中删除最后一个 \n?

str.join会照顾,

input_file.write(
    "\n".join("%s:%s" % (key, value) for key, value in dict.items())
)

我建议在新行之前插入\n ,除了第一行:

prefix = ''
for key, value in dict.items():
    input_file.write(f'{prefix}{key}:{value}')  # also: modern formatting
    prefix = '\n'

见下文

data = {'A':12,'B':34}
for idx,key in enumerate(data.keys()):
   new_line = '' if idx == len(data) -1 else '\n'
   input_file.write("{}:{}{}".format(key, data[key],new_line))

一个可以打印到文件。 因此可以用换行符分隔 k、v 对并将 end 设置为空字符串:

print(*(f'{k}: {v}' for k, v in d.items()), sep='\n', end='', file=input_file)

暂无
暂无

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

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