Python在文件关闭后不插入EOF字符?

2024-10-03 09:07:51 发布

您现在位置:Python中文网/ 问答频道 /正文

我遇到了一个奇怪的问题,一些打印到文件中的Python代码没有插入EOF字符。基本上,Python脚本生成运行脚本,稍后作为集群上的作业提交。实际上,我在“”之间编写了整个runscript,允许插入变量(在模拟中改变一些参数)。我用

with open(file_name, 'w') as runscrpt:
    runscrpt.write("""ENTIRE_FILE_CONTENTS_HERE""")

语法。如果需要的话,我可以给出实际的代码,但这并不比上面提到的多。尽管脚本运行良好并生成了我所有的runsript,但每当我提交它们时,什么都没有发生。我花了很长时间才弄清楚原因,但这是因为他们缺少一个EOF字符。例如,我可以通过打开一个,在vim中的某个地方添加一些尾随空格或空行,然后重新保存该文件。在

为什么Python不插入EOF字符,有没有比用vim手动对所有文件进行琐碎编辑更好的解决方法呢?在


Tags: 文件代码name脚本参数with作业集群
1条回答
网友
1楼 · 发布于 2024-10-03 09:07:51

听起来你是说没有EOL(不是EOF!)最后,因为这就是diff通常会告诉你的。只需在写入结束时添加一个换行符(确保在最后的"""结束符之前有一个换行符,或者显式地编写一个单独的换行符)。在

with open(file_name, 'w') as runscript:
    runscript.write("""ENTIRE_FILE_CONTENTS_HERE\n""")

(作为奖励,我加上了缺失的元音。)

相关问题 更多 >