文件的打开模式
# 读文件
f=open('陈粒',encoding='utf-8')
data=f.read()
print(data)
f.close()
f=open('陈粒','r',encoding='utf-8')
data=f.read() # 读全部
# print(data)
print(f.readable()) # 判断是否可读,是返回True,否则返回False
print('第1行',f.readline(),end='')
print('第2行',f.readline()) # 读一行
print('第3行',f.readline())
datas=f.readlines() # 读全部行存入列表,每行为一个元素
print(datas)
f.close()
# 写文件
f=open('陈粒1','w',encoding='utf8')
# f.read()
f.write('11111111\n')
f.write('222222222\n')
f.write('333\n4444\n555\n')
print(f.writable())
f.writelines(['555\n','6666\n']) # 一列表传入写的字符串
f.writelines(['555\n','6666\n',1]) # 文件内容只能是字符串,只能写字符串
f.close()
#文件追加
f=open('test','a',encoding='utf-8')
f.write('写到文件最后')
文件定位
tell()方法告诉你文件内的当前位置, 换句话说,下一次的读写会发生在文件开头这么多字节之后。
seek(offset [,from])方法改变当前文件的位置。Offset变量表示要移动的字节数。From变量指定开始移动字节的参考位置。
如果from被设为0,这意味着将文件的开头作为移动字节的参考位置。如果设为1,则使用当前的位置作为参考位置。如果它被设为2,那么该文件的末尾将作为参考位置。
# 打开一个文件
fo = open("foo.txt", "r+")
str = fo.read(10)
print("读取的字符串是 : ", str)
# 查找当前位置
position = fo.tell()
print("当前文件位置 : ", position)
# 把指针再次重新定位到文件开头
position = fo.seek(0, 0)
str = fo.read(10)
print("重新读取字符串 : ", str)
# 关闭打开的文件
fo.close()
#输出 读取的字符串是 : www.dsadgh
# 当前文件位置 : 10
# 重新读取字符串 : www.dsadgh