python_IO操作之rwa模式介绍

IO操作之rwa
# r模式的两种读取方式:
# 1:一次性全部读完(不推荐:文件大,内存直接爆炸)
with open('F:\ATM\REDANE', 'rt', encoding='utf-8') as f:
res = f.read() # 一次性全部读出来
print(res)

# 2:一行一行的读取(不是最优的,理由同行上)
with open('F:\ATM\REDANE', 'rt', encoding='utf-8') as f:
for line in f: # 一行一行的取出
print(line.strip())
# 备注:
# 这里因为是一行一行读取,所以每一行的末尾都会有一个换行符\n,
# 所以实际读出来的值是:第一行\n第二行\n第三行\n 这样的格式,
# 所以我们需要做处理,就是.strip(),去掉头尾默认的空格

# 3:通过接收字节读取(最优的)
with open('F:\ATM\REDANE', 'rt', encoding='utf-8') as f:
res = f.read(1024) # 通过字节读取数据
print(res)

# 三、w覆盖、创建模式
# 1:如果你的写入的文件不存在,就会自动给你创建一个文件
# 2:你每一次写入的内容,不是追加,都是直接覆盖你之前的内容
# 简单解释:写入前,会把你之前的文件内容删掉,在写入新的进去(危险操作)
# 不过值得注意一点的是,当该文件没有关闭前,你是可以追加写入内容的
with open('F:\ATM\REDANE', 'wt', encoding='utf-8') as f:
f.write("11")
f.write("12")

# 四、a追加模式,只写不能读
# 追加模式,不会删除之前的数据,比较推荐
with open('F:\ATM\REDANE', 'at', encoding='utf-8') as f:
f.write("11")
f.write("12")


# 总结:
# t模式:
# 1:读写都只能以字符串为单位(uniconde)
# 2:适用范围局限于文本

猜你喜欢

转载自www.cnblogs.com/haibaiwuchang/p/13388610.html