【问题标题】:Replacing commas with blank spaces from a read in text file从读入的文本文件中用空格替换逗号
【发布时间】:2014-06-17 19:42:05
【问题描述】:
import os

os.chdir('my directory')
data = open('text.txt', 'r')
data = data.replace(",", " ")
print(data)

我得到错误:

AttributeError: '_io.TextIOWrapper' 对象没有属性 'replace'

【问题讨论】:

  • 您必须先将文件中的数据读入字符串。阅读文档:docs.python.org/2/tutorial/…
  • 不要使用chdir。只需使用with open(os.path.join(my_directory, 'text.txt'), 'r') as data: 打开文件。
  • 谁能告诉我为什么我的这个 Q 点了 4 分?如果没有适当的解释,禁止我的帐户是没有用的!

标签: python file text replace


【解决方案1】:

您应该在with 语句中打开文件:

with open('text.txt', 'r') as data:
  plaintext = data.read()

plaintext = plaintext.replace(',', '')

with 语句确保资源被正确释放,因此您不必担心记得关闭它们。

您缺少的更重要的事情是 data 是一个文件对象,并且替换适用于字符串。 data.read() 返回文件中的文本字符串。

【讨论】:

  • 谢谢!现在有没有办法保存这个替换旧文件的更新文件?
  • 是的。如果在获取文本并完成修改后使用with open('text.txt', 'w') as data: 打开文件,则可以使用data.write(plaintext) 覆盖旧文件的内容。我建议此时查看documentation,看看你可以从这里去哪里
猜你喜欢
  • 2010-11-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多