python:打开文件,编辑一行,将其保存为同一文件
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了python:打开文件,编辑一行,将其保存为同一文件,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1619字,纯文字阅读大概需要3分钟。
内容图文
我想打开一个文件,搜索特定的单词,更改单词并再次保存文件.听起来真的很容易 – 但我无法让它工作……我知道我必须覆盖整个文件但只改变这个单词!
我的代码:
f = open('./myfile', 'r')
linelist = f.readlines()
f.close
for line in linelist:
i =0;
if 'word' in line:
for number in arange(0,1,0.1)):
myNumber = 2 - number
myNumberasString = str(myNumber)
myChangedLine = line.replace('word', myNumberasString)
f2 = open('./myfile', 'w')
f2.write(line)
f2.close
#here I have to do some stuff with these files so there is a reason
#why everything is in this for loop. And I know that it will
#overwrite the file every loop and that is good so. I want that :)
如果我这样做,’new’myfile文件只包含更改的行.但我想要改变整行的整个文件…任何人都可以帮助我吗?
****编辑*****
我修好了它!我只是转动了循环,现在它完美地工作如下:
f=open('myfile','r')
text = f.readlines()
f.close()
i =0;
for number in arange(0,1,0.1):
fw=open('mynewfile', 'w')
myNumber = 2 - number
myNumberasString = str(myNumber)
for line in text:
if 'word' in line:
line = line.replace('word', myNumberasString)
fw.write(line)
fw.close()
#do my stuff here where I need all these input files
解决方法:
您只需要随时写出所有其他行.正如我在评论中所说,我不知道你真正试图用你的替换,但这里是一个略微简化的版本,其中我们只是用’new’替换所有出现的’word’:
f = open('./myfile', 'r')
linelist = f.readlines()
f.close
# Re-open file here
f2 = open('./myfile', 'w')
for line in linelist:
line = line.replace('word', 'new')
f2.write(line)
f2.close()
或者使用上下文:
with open('./myfile', 'r') as f:
lines = f.readlines()
with open('./myfile', 'w') as f:
for line in lines:
line = line.replace('word', 'new')
f.write(line)
内容总结
以上是互联网集市为您收集整理的python:打开文件,编辑一行,将其保存为同一文件全部内容,希望文章能够帮你解决python:打开文件,编辑一行,将其保存为同一文件所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。