默认情况下读取文件的所有内容,小的文件,直接用read读取即可
如果是一个大文件(文件大小>内存大小) readline()
代码:
f = open('/tmp/passwd', 'r')
># 类似于head -c
print(f.read(3))
#4g 5g
#每次读取一行内容
print(f.readline())
print(f.readline())
#读取文件内容,返回一个列表,列表元素分贝为文件的行内容
print(f.readlines())
#print(f.readable())
#对于每一行,去掉后面的'\n' ---(列表生成式 map())
print([line.strip() for line in f.readlines()])
print(list(map(lambda x:x.strip(),f.readlines())))
f.close()
运行:
- 指针
seek:移动指针
第一个参数:偏移量>0:代表向后移动 <0:代表前移动
第二个参数:
0:移动指针到文件开头
1:当前位置
2:移动指针到文件末尾
代码:
f = open('/tmp/passwd','rb')
#f.write('hello') #从指针所在位置写入,写的就是字符串的内容
#f.writelines(['a','b']) #将列表中的每个元素写入文件
#f.writable()
#指针的操作
print(f.tell())
print('1:',f.read(3))
print(f.tell())
f.seek(0,2)
print(f.tell())
f.close()
运行: