python - 脚本仅在我重新启动 shell 时才有效
问题描述
所以我写了一个脚本,它从输入(手动)获取参数,并将其写入一个文本文件。我唯一的问题是输入中的文本不会出现在 txt 文件中,只有当我手动重新启动 shell 时。你会推荐什么来解决这个问题,这样我就不必一直手动重新启动 shell?
好吧,脚本很简单,因为我是初学者:D
# input to txt
text_from_input = input()
file=open("testfile.txt","w")
file.write(text_from_input)
file.close
解决方案
在您的代码中,您引用了close
文件对象的方法,但您没有调用它。这意味着在您关闭解释器之前不会关闭文件(您可能也可以通过使用del file
变量或将变量重新绑定到其他对象来获得相同的效果)。
要解决此问题,您close
只需添加括号即可调用:file.close()
或者更好的是,使用with
声明:
with open("testfile.txt","w") as file:
file.write(text_from_input)
# the file will be closed here
当后面的缩进块with
结束时,文件将自动关闭。由于异常,即使您意外退出块也会发生这种情况。
推荐阅读
- python - 如何在 Python 中使用可能是数学总和中的字符串的变量?
- testing - 通过 bats 测试创建特定目录及其内容
- python - 从日志文件中删除超过 10 天的所有行
- python - 预测值的长度不等于实际值。keras TPU
- sql - SQL Server 2012 中的文本到列
- python - 仅选择包含特定字符的列
- reactjs - CORS 阻止 React App 获取值
- javascript - 如何选择几个 CSS 类并应用 Javascript 逻辑?
- java - 为什么 html 文件中的 modal="true" 无法使用 PrimeNG 在 jhipster 中编译?
- git - 每次我更改分支 git 都会回到 master