python-3.x - 用变量替换文本文件中的特定行
问题描述
def appendingfile():
OpenFiles1 = open("modules.txt", "a")
NewModule = (FreshModule.get())
ModuleToAppend = (ModuleInput.get())
for line in OpenFiles1:
if ModuleToAppend in OpenFiles1:
OpenFiles1.write(NewModule)
我不确定如何用我的变量之一替换 python 文件中的特定行。但是在我看到结果之前,我收到了这个错误,说 unsupportedOperationL 不可读,我对如何解决这个问题感到困惑。有什么建议么?
解决方案
如该函数的文档所示,有几种模式可以在 python 中打开文件:
'r' 用于读取
'w' 用于写入(覆盖现有文件)
'a' 用于附加(仅在末尾写入,这是脚本中的问题)
'+' 用于更新(读取和写入)
当您以写入或更新模式打开时,会有这种指针(查找位置)告诉 python 在哪里写入。如果您以附加模式打开,则无论查找位置如何,此指针始终位于文本末尾。
尝试以“r+”模式打开以进行阅读和更新。
推荐阅读
- c# - 点击事件不适用于 Firefox,但适用于 chrome
- elixir - Phoenix Framework - jQuery connection
- android - Where is the Android emulator source code
- awk - cat 3 个文件中的特定列
- excel - Excel VBA 创建下拉列表
- django - How to declare and use global variables in Django (with Eclipse)
- java - My application can't start. It crashes on open
- excel - 如何更新为 32 位编写的 VBA 代码以同时使用 32 和 64?
- java - 当我没有要执行的文件时如何运行 jshell?
- javascript - 在 Safari 中将变量的值复制到剪贴板