# 绝对路径 f = open(‘d:\文件.txt‘, mode=‘r‘, encoding="utf-8") # 打开文件,内容(‘文件路径‘,打开模式,编码方式) a = f.read() # 对文件进行的操作 print(a) f.close() # 关闭程序 # 相对路径 f = open(‘文件操作‘, mode=‘r‘, encoding="utf-8") a = f.read() print(a) f.close()
r ,只读模式【默认模式,文件必须存在,不存在则抛出异常】
w,只写模式【不可读;不存在则创建;存在则清空内容】
# a :阿瑟东阿萨斯法 f = open(‘a‘, mode=‘w‘, encoding=‘utf-8‘) content = f.write(‘as‘) # a:as
a, 只追加写模式【不可读;不存在则创建;存在则只追加内容】
# a:阿瑟东阿萨斯法as f = open(‘a‘, mode=‘a‘, encoding=‘utf-8‘) content = f.write(‘阿萨大‘) f.close() # a:阿瑟东阿萨斯法as阿萨大
rb
wb
ab
注:以b方式打开时,读取到的内容是字节类型,写入时也需要提供字节类型,不能指定编码
r+, 读写【可读,可写】
w+,写读【可写,可读】
a+, 写读【可写,可读】
r+b, 读写【可读,可写】
w+b,写读【可写,可读】
a+b, 写读【可写,可读】
read 按字符定光标
a :阿瑟东阿萨斯法 f = open(‘a‘, mode=‘r‘, encoding=‘utf-8‘) content = f.read(3) print(content) f.close() # 阿瑟东
seek 按字节定光标(英文一个字符一个字节,中文三个字节一个字符)
# a :阿瑟东 f = open(‘a‘, mode=‘r+‘, encoding=‘utf-8‘) f.seek(3) content = f.read() print(content) f.close() # 瑟东
# b: abcdefg f = open(‘‘, mode=‘r+‘, encoding=‘utf-8‘) f.seek(3) content = f.read() print(content) f.close() # defgh
tell 告诉你光标的位置
f = open(‘a‘, mode=‘r+‘, encoding=‘utf-8‘) content = f.tell() print(content) f.close() #输出 0
readline 一行一行的读
readlines 每一行当当成列表中的一个元素,然后添加到列表
truncate 截取
# b: abcdefg f = open(‘b‘, mode=‘r+‘, encoding=‘utf-8‘) f.truncate(3) content = f.read() print(content) f.close() #输出 abc
for line in f 将文件里的内容一行一行的输出
with open 不用close
原文:https://www.cnblogs.com/albatorss/p/9420565.html