#Python中读入文件,主要有read(),readline(),和readlines()。其中,read()和readlines()都是一次将整个文件读入内存,然后根据循环的不同,处理方式不同!下面将展示不同情况下的用法!
# -*- coding: cp936 -*-
def readfile1(filename):
fr= open(filename)
text = fr.read() #一次性读取所有的行,读出来text是字符串
fr.close()
print text
def readfile2(filename):
fr= open(filename)
for unused_i in range(3):
text = fr.readline() #读取单行,读出来text是字符串
print text #能够打印出text
print text #不能够打印出全文本text
fr.close()
def readfile3(filename):
fr= open(filename)
text = fr.readlines()#一次性读取所有的行,读出来text是列表
fr.close()
print text
def readfile4(filename):
fr= open(filename)
char = fr.read(1)#一次性读一个字符,读出来text是字符
while char:
print char
char = fr.read(1)
fr.close()
def readfile5(filename):
fr= open(filename)
while True:
line = fr.readline() #读取单行,读出来text是字符串
if not line:break
print line
fr.close()
def readfile6(filename):
fr= open(filename)
for char in fr.read():#一次性读取所有的行,读出来是字符串
print char #但是char每次只处理一个字符
fr.close()
def readfile7(filename):#注意这种循环只能处理第一行数据,print时是答应一个个字符
fr= open(filename)
for line in fr.readline():
print line
fr.close()
def readfile8(filename):
fr= open(filename)
for line in fr.readlines():#一次性读取所有的行,读出来是列表
print line #但是line每次只处理一行字符
fr.close()
def readfile9(filename):
fr= open(filename)
for line in fr:
print line
fr.close()
def main():
filename = 'test.txt'
print '----readfile1----'
readfile1(filename)
print '----readfile2----'
readfile2(filename)
print '----readfile3----'
readfile3(filename)
print '----readfile4----'
readfile4(filename)
print '----readfile5----'
readfile5(filename)
print '----readfile6----'
readfile6(filename)
print '----readfile7----'
readfile7(filename)
print '----readfile8----'
readfile8(filename)
print '----readfile9----'
readfile9(filename)
if __name__ == '__main__':
main()
输出结果为:
>>>
----readfile1----
Welcome to Python!
I love!
----readfile2----
Welcome to Python!
I love!
----readfile3----
['Welcome to Python!\n', 'I love!']
----readfile4----
W
e
l
c
o
m
e
t
o
P
y
t
h
o
n
!
I
l
o
v
e
!
----readfile5----
Welcome to Python!
I love!
----readfile6----
W
e
l
c
o
m
e
t
o
P
y
t
h
o
n
!
I
l
o
v
e
!
----readfile7----
W
e
l
c
o
m
e
t
o
P
y
t
h
o
n
!
----readfile8----
Welcome to Python!
I love!
----readfile9----
Welcome to Python!
I love!
>>>
test.txt 文件:
Welcome to Python!
I love!