【发布时间】:2022-01-21 22:10:15
【问题描述】:
我有以下将字符串保存到文件的简单函数:
def writeFile(path, data):
with open(path, mode = 'wt', encoding="utf-8") as file:
file.write("".join(data))
file.close()
我尝试使用 file.write(data),然后将 data 替换为 "".join(data) 但它没有改变任何东西。大多数情况下,字符串是正常保存的,但有时,它会保存为字符列表,这意味着字符串的每个字符都用 \n 分隔,我不明白为什么。
【问题讨论】:
-
您发布的代码不会添加换行符,这一定是在调用者中发生的。
-
您应该提供一个可重现的例子来说明发生这种情况的情况。
-
你的代码有点别扭。如果
data是一个字符串,那么"".join(data)会将其分解为字符,然后将其重新组合成原始字符串。您的原始数据必须包含换行符。 -
您不需要使用
file.close。上下文管理器会自动关闭文件。