python中read,readline和readlines的区别?
准备工作:
123.txt的内容:
1 hello world
2 hello1 world1
3 abcd
(1) read(size):按字节从头读到最后,返回的是一个字符串类型,其中参数size是表示读取的字节数,size的默认是读取全部。
例:
def func(filename):
f = open(filename)
t = f.read()
print(type(t))
print(t)
func('123.txt')
输出的结果是:
<class 'str'>
hello world
hello1 world1
abcd
(2) readline() :每次只读取一行,跟read一样,也是返回的是str字符串对象。
例:
def func1(filename):
f = open(filename)
t = f.readline()
print(type(t))
while t:
print(t)
t = f.readline()
f.close()
func1('123.txt')
输出的结果是:
<class 'str'>
hello world
hello1 world1
abcd
(3) readlines() : 读取文件的所有行,把读取的每一行作为一个元素放在一个列表中,返回的是一个列表对象。
例:
def func2(filename):
f = open(filename)
t = f.readlines()
print(type(t))
print(t)
for i in t:
print(i)
f.close()
func2('123.txt')
输出的结果是:
<class 'list'>
['hello world\n', 'hello1 world1\n', 'abcd\n', '\n']
hello world
hello1 world1
abcd
总结:以上就是我理解的不同点,如果有哪说的不对的地方或者更好解释方法,可以留言随时交流。