我需要从Windows XP上的文本文件中删除数字。我是python的新手,只是安装它进行数据清理。
我已将测试文件存储在C:\ folder1 \ test1.txt
中test1.txt上的上下文只有一行:
这不能是b3 delet3d,但结尾的数字是134411
我想创建一个包含
的文件result1.txt这不能是b3 delet3d,而是最后的数字是
这是我到目前为止所尝试的内容
import os
fin = os.open('C:\folder1\test1.txt','r')
我收到以下错误:
TypeError: an integer is required.
我不确定它预期的是什么整数。
请告诉我如何进行编程以获得我想要的结果。非常感谢你的帮助。
答案 0 :(得分:8)
您在open()
模块中使用os
,该模块采用数字文件模式。你想要内置的open()
函数。此外,字符串中的反斜杠在Python中具有特殊含义;如果你的意思是反斜杠,你需要加倍。尝试:
fin = open('C:\\folder1\\test1.txt','r')
答案 1 :(得分:2)
根据http://docs.python.org/library/os.html#file-descriptor-operations,os.open正在查找'flag'参数,该参数由these flags中的一个或多个组成,其中'r'不是。它似乎也表明您可能希望使用open()而不是os.open()
答案 2 :(得分:0)
f = open(r'C:\folder1\test1.txt','r')