python基础语法快速入门之文件读写

        Python提供了内置支持来实现文件的打开(open)、处理(process)和关闭(close)。可以允许你打开一个文件以某种方式处理其其数据(读、写、追加数据),然后在完成时关闭文件(这回保存所做的修改)。

写文件

步骤:

  • 调用open函数会返回一个文件流,两个参数,第二个参数指操作模式(此处为追加模式)。
  • 使用print方法写数据到文件,它有两个参数,第一个是数据,第二个指定要写的文件流。
  • 调用close关闭文件。
todos = open("F:\\haha\\bbb\\aaa.txt","a")
print("put out the trash",file=todos)
print("feed the cat",file=todos)
print("prepare tax return",file=todos)
#这里向文件里写了三行数据
todos.close()

读文件

步骤:

  • 调用open函数返回一个文件流。由于读是open的默认操作模式,因此可以省略第二个参数。
  • 使用for循环读取文件各行,for循环每次循环迭代一行数据。
  • 关闭流。
tasks = open("F:\\haha\\bbb\\aaa.txt")
for chore in tasks:
	print(chore)
#注意这里的输出,会发现它会有额外的换行
#那是因为文件本身有个换行符,print默认有个换行符
#所以总共有两个换行符,可以修改为
# print(chore,end='')
tasks.close()

        通过上述练习,可知道,open的第一个参数是要处理的文件名,第二个参数是可选的。主要操作模式可分为“读”、“写”、“追加”。如果指定的文件不存在,其他模式(除了“r”模式)都会创建一个新的空文件。

  • ‘r’   打开一个文件来读数据。这是默认模式,因此可以省略
  • ‘w’ 打开一个文件来写数据。如果文件中已经包含数据,在继续写之前会先清空文件中的数据。
  • ‘a’ 打开一个文件来追加数据。保留文件的内容,向文件末尾增加新数据。
  • ‘x’ 打开一个新文件来写数据。如果文件已经存在则失败

         默认地,文件以文本模式打开,如果你要处理非文本数据(如图片、MP3文件),可以为模式增加‘b’来指定二进制模式 (如‘wb’表示写二进制数据)。如果第二个参数还包含‘+’,则会打开文件来完成读写(‘x+b’表示“读写一个新的二进制文件”)。

        下面介绍更加简便的文件打开处理关闭方式

with....as.....

with open("F:\\haha\\bbb\\aaa.txt") as todos:
	for chore in todos:
		print(chore)

       这里可以发现没有close的调用,with语句可以自动帮你调用。with语句会帮你做善后处理工作。

总结:

读文件:使用for循环行数据

写文件:使用print函数实现

上面的方法用来处理纯文本信息还是可以的。因为读写过程中,解码字符和编码字符都是采用统一的编码(比如用gbk编码,用gbk解码),而且在使用print时默认还有换行符,还得进行end=''处理。但是,如果你要对一个二进制的文件进行操作时,就不能使用print函数了,因为二进制文件不能包含字符。所以使用read、write函数完成二级制的读写操作。


 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值