Python对文件的读取问题
#-*-encoding:UTF-8-*-myfile=open('E:\\1NTFS\\Python\\myproject\\Test.doc','r','utf-8'...
#-*- encoding:UTF-8 -*-
myfile=open('E:\\1 NTFS\\Python\\myproject\\Test.doc','r','utf-8')
myfile.seek(0)
f=myfile.readlines()
for line in f:
print(line)
myfile.close()
运行时出现如下问题
Traceback (most recent call last):
File "E:\1 NTFS\Python\myproject\testr.py", line 2, in <module>
myfile=open('E:\\1 NTFS\\Python\\myproject\\Test.doc','r','utf-8')
TypeError: an integer is required (got type str)
求高手解答 展开
myfile=open('E:\\1 NTFS\\Python\\myproject\\Test.doc','r','utf-8')
myfile.seek(0)
f=myfile.readlines()
for line in f:
print(line)
myfile.close()
运行时出现如下问题
Traceback (most recent call last):
File "E:\1 NTFS\Python\myproject\testr.py", line 2, in <module>
myfile=open('E:\\1 NTFS\\Python\\myproject\\Test.doc','r','utf-8')
TypeError: an integer is required (got type str)
求高手解答 展开
3个回答
推荐于2016-09-17 · 知道合伙人互联网行家
关注
展开全部
Python编程对文件的读取和写入操作还是很方便的,下面对文件操作的一个简单程序(test.py),代码如下:
def processFile(inputFile, outputFile): #定义一个函数
fin = open(inputFile, 'r') #以读的方式打开文件
fout = open(outputFile, 'w') #以写得方式打开文件
for eachLine in fin: #读取文件的每一行
line = eachLine.strip().decode('utf-8', 'ignore') #去除每行的首位空格,并且将文件编码转换成Unicode编码
outStr = line #我没对读入的文本进行处理,只是直接将其输出到文件
fout.write(outStr.strip().encode('utf-8') + '\n') #去除首位的空格,并转回到utf-8编码,然后输出
fin.close() #关闭文件
fout.close()
processFile('myinputFile.txt', 'myoutputFile.txt') #调用该函数对文件进行处理
按照上面的程序写完之后,输入:python test.py 就能执行该程序了。
展开全部
myfile=open('E:\\1 NTFS\\Python\\myproject\\Test.doc','r','utf-8')
-->
myfile=open('E:\\1 NTFS\\Python\\myproject\\Test.doc','r')
追问
后面那个是指定的编码方式,不是这个原因,而且没有那句的话可能会报错
追答
open(...)
open(name[, mode[, buffering]]) -> file object
Open a file using the file() type, returns a file object. This is the
preferred way to open a file. See file.__doc__ for further information.
open这个函数的第三个参数不是用来接收编码方式的,而是传入一个buffering的值,你传入了'utf-8'字符串所以系统让你传一个整型
TypeError: an integer is required (got type str)
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
myfile=open('E:\\1 NTFS\\Python\\myproject\\Test.doc','r',encoding='utf-8')
这样就对了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询