首页 > 编程语言 > 详细

17.python文件处理

时间:2019-11-07 20:10:58      阅读:84      评论:0      收藏:0      [点我收藏+]

原文:https://www.cnblogs.com/linhaifeng/articles/5984922.html

文件处理流程:

1. 打开文件,得到文件句柄并赋值给一个变量
2. 通过句柄对文件进行操作
3. 关闭文件

#1. 打开文件的模式有(默认为文本模式):
r ,只读模式【默认模式,文件必须存在,不存在则抛出异常】
w,只写模式【不可读;不存在则创建;存在则清空内容】
a, 之追加写模式【不可读;不存在则创建;存在则只追加内容】

#2. 对于非文本文件,我们只能使用b模式,"b"表示以字节的方式操作(而所有文件也都是以字节的形式存储的,使用这种模式无需考虑文本文件的字符编码、图片文件的jgp格式、视频文件的avi格式)
rb 
wb
ab
注:以b方式打开时,读取到的内容是字节类型,写入时也需要提供字节类型,不能指定编码

#3. 了解部分
"+" 表示可以同时读写某个文件
r+, 读写【可读,可写】
w+,写读【可读,可写】
a+, 写读【可读,可写】
x, 只写模式【不可读;不存在则创建,存在则报错】
x+ ,写读【可读,可写】
xb

 

#1. 打开文件,得到文件句柄并赋值给一个变量
f=open(a.txt,r,encoding=utf-8) #默认打开模式就为r

#2. 通过句柄对文件进行操作
data=f.read()

#3. 关闭文件
f.close()

读文件

f=open(文件,r,encoding=utf-8)
# data=f.read()
# # print(data)
# print(f.readable())
# print(‘第1行‘,f.readline(),end=‘‘)
# print(‘第2行‘,f.readline())
# print(‘第3行‘,f.readline())
# # for i in range(1):
# #     pass
# print(‘第4行‘,f.readline())
# print(‘第5行‘,f.readline())
# print(‘第6行‘,f.readline())
# print(‘第7行‘,f.readline())
data=f.readlines() #读所有
print(data)
f.close()

写文件

f=open(文件名,w,encoding=utf8)
# f.read()
f.write(11111111\n)
f.write(222222222\n)
f.write(333\n4444\n555\n)
# f.writable()
f.writelines([555\n,6666\n])
f.writelines([555\n,6666\n,1]) # 文件内容只能是字符串,只能写字符串
f.close()

第二种方法(with关键字,不用手动close)

# 一行太长时斜杠+回车换行
with open(xxx,r,encoding=gbk) as src_f,        open(xxx_new,w,encoding=gbk) as dst_f:
    data=src_f.read()
    dst_f.write(data)

# f=open(‘a.txt‘)
# print(f.encoding) #查看文件编码

 

17.python文件处理

原文:https://www.cnblogs.com/raitorei/p/11815017.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!