python之路4-文件操作
对文件操作流程
- 打开文件,得到文件句柄并赋值给一个变量
 - 通过句柄对文件进行操作
 - 关闭文件
 
f = open('lyrics','r',encoding='utf-8')
read_line = f.readline()#读取一行
print(read_line)
print('我是分割线'.center(50,'-'))
data = f.read()#读取全部
print(data)
打开文件的模式有:
- r,只读模式(默认)。
 - w,只写模式。【不可读;不存在则创建;存在则删除内容;】
 - a,追加模式。【可读; 不存在则创建;存在则只追加内容;】
 
"+" 表示可以同时读写某个文件
- r+,可读写文件。【可读;可写;可追加】
 - w+,写读
 - a+,同a
 
"U"表示在读取时,可以将 \r \n \r\n自动转换成 \n (与 r 或 r+ 模式同使用)
- rU
 - r+U
 
"b"表示处理二进制文件(如:FTP发送上传ISO镜像文件,linux可忽略,windows处理二进制文件时需标注)
- rb
 - wb
 - ab
 
with语句
为了避免打开文件后忘记关闭,可以通过管理上下文,即:
with open('lyrics','r',encoding='utf-8') as f:
    data = f.read()
print(data) 
如此方式,当with代码块执行完毕时,内部会自动关闭并释放文件资源。
字符编码与转码
需知:
1.在python2默认编码是ASCII, python3里默认是unicode
2.unicode 分为 utf-32(占4个字节),utf-16(占两个字节),utf-8(占1-4个字节), so utf-16就是现在最常用的unicode版本, 不过在文件里存的还是utf-8,因为utf8省空间
3.在py3中encode,在转码的同时还会把string 变成bytes类型,decode在解码的同时还会把bytes变回string

#python2
msg = "我爱北京天安门"
msg_gb2312 = msg.decode("utf-8").encode("gb2312")
#python3
msg_gb2312 = msg.encode("gb2312") #默认就是unicode,不用再decode,喜大普奔
python之路4-文件操作的更多相关文章
- 小白的Python之路 day2  文件操作
		
文件操作 对文件操作流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 现有文件如下 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 1 ...
 - python之路(五)-文件操作
		
文件操作无非两个,即:读.写 python 2.x: 文件句柄 = file('文件路径', '模式') python3.x: 文件句柄 = open('文件路径', '模式') 打开文件的模式有: ...
 - python之路---08 文件操作
		
二十六. 文件 f = open(文件路径,mode = '模式',encoding = '编码格式') 1.基础 ① 读写时,主要看光标的位置 ②操作完成要写 f.close( ) f.f ...
 - python成长之路五-文件操作
		
1,文件操作 f = open("D:\种子.txt",encoding="utf-8",mode="r") # 打开一个种子.txt文件, ...
 - Python学习之路4 - 文件操作&编码转换
		
文件操作 文件操作大概分三步: 把文件打开. 操作文件. 把文件关上. 打开文件 打开文件用open()函数,打开成功后返回一个资源,具体语法如下. open(要打开的文件,打开方式,打开文件的格式, ...
 - 第三章:Python基础の函数和文件操作实战
		
本課主題 Set 集合和操作实战 函数介紹和操作实战 参数的深入介绍和操作实战 format 函数操作实战 lambda 表达式介绍 文件操作函数介紹和操作实战 本周作业 Set 集合和操作实战 Se ...
 - Python基础知识(八)----文件操作
		
文件操作 一丶文件操作初识 ###f=open('文件名','模式',编码): #open() # 调用操作系统打开文件 #mode #对文件的操作方式 #encoding # 文件的编码格式 存储编 ...
 - Python基础7:文件操作
		
[ 文件操作] 1 对文件操作流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 现有文件如下: 昨夜寒蛩不住鸣. 惊回千里梦,已三更. 起来独自绕阶行. 人悄悄,帘外月胧 ...
 - python函数基础 与文件操作
		
函数的定义 函数是通过赋值传递的,参数通过赋值传递给函数.def语句将创建一个函数对象并将其赋值给一个变量名,def语句的一般格式如下: def function_name(arg1,arg2[,.. ...
 - Python 第三天 文件操作(2)
		
文件操作 操作文件时,一般需要经历如下步骤: 打开文件 操作文件 一.打开 文件句柄 = file('文件路径', '模式') 注:python中打开文件有两种方式,即:open(...) 和 fi ...
 
随机推荐
- mysql 错误 ERROR 1030 Got error 28 from
			
错误SQL 查询:编辑SHOWFULLFIELDSFROM`表`FROM`数据库`; MySQL 返回:#1030 - Got error 28 from storage engine 根据返回值,可 ...
 - Maven(十四)Maven 继承
			
以Junit为例 由于junit的依赖的范围为test,所以在每一个项目中都必须配置一个junit. 为了统一管理方便,可以单独创建一个项目用来进行**统一管理**junit的版本 即在子项目中不设置 ...
 - TensorFlow资料汇总
			
升级mac自带的python 使用virtualenv进行python环境隔离 tf.nn.conv2d.卷积函数 max_pool 池化函数 TF.VARIABLE.TF.GET_VARIABLE. ...
 - Python全栈开发之---装饰器
			
1.装饰器的形成过程 import time def func1(): print('in func1') def timer(func): def inner(): start = time.tim ...
 - H5的语义化标签(PS: 后续继续补充)
			
头部信息 <header></header> 区块标签 <figure> <figcaption>123</figcaption> < ...
 - Dynamics CRM图表高级话题:创建跨实体的图表
			
关注本人微信和易信公众号: 微软动态CRM专家罗勇 ,回复147或者20150728可方便获取本文,同时可以在第一时间得到我发布的最新的博文信息,follow me! 制作图表你会发现,在界面上只能选 ...
 - Tomcat 参数配置相关
			
Tomcat参数配置相关 by:授客 QQ:1033553122 目的: 对Tomcat配置的点滴学习总结,主要目的在于分析Tomcat与性能相关的一些参数设置,以便性能调优时选择最优配置 环境: ...
 - (最完美)小米平板3的USB调试模式在哪里开启的流程
			
经常我们使用安卓手机链上电脑的时候,或者使用的有些应用软件比如我们公司营销小组经常使用的应用软件引号精灵,之前的老版本就需要开启usb调试模式下使用,现经常新版本不需要了,如果手机没有开启usb调试模 ...
 - 2019Java查漏补缺(一)
			
看到一个总结的知识: 感觉很全面的知识梳理,自己在github上总结了计算机网络笔记就很累了,猜想思维导图的方式一定花费了作者很大的精力,特共享出来.原文:java基础思维导图 自己学习的查漏补缺如下 ...
 - 一个「学渣」从零开始的Web前端自学之路
			
从 13 年专科毕业开始,一路跌跌撞撞走了很多弯路,做过餐厅服务员,进过工厂干过流水线,做过客服,干过电话销售可以说经历相当的“丰富”. 最后的机缘巧合下,走上了前端开发之路,作为一个非计算机专业且低 ...