文件的写入 | Python从入门到精通:高阶篇之四十九-阿里云开发者社区

开发者社区> Python学习站> 正文

文件的写入 | Python从入门到精通:高阶篇之四十九

简介: 可以使用write()来向文件中写入内容,如果操作的是一个文本文件的话,则write()需要传递一个字符串作为参数。该方法可以分多次向文件中写入内容,写入完成以后,该方法会返回写入的字符的个数。

查看上一节:文件读取的其他方式

文件的写入

使用write()来向文件中写入内容,如果操作的是一个文本文件的话,则write()需要传递一个字符串作为参数。代码演示如下:

file_name = 'demo.txt'

with open(file_name , encoding='utf-8') as file_obj:
    file_obj.write('hello hello how are you!')

执行结果为:
image.png
程序报错了,此时要注意的是程序的打开文件的方式。
使用open()打开文件时必须要指定打开文件所要做的操作(读、写、追加),如果不指定操作类型,则默认是读取文件 , 而读取文件时是不能向文件中写入的。
在之前的课程(打开文件)中讲过打开文件时会默认有一个mode='r',而r 表示只读的。w 表示是可写的。
看下写入的效果:

file_name = 'demo.txt'

with open(file_name , 'w' , encoding='utf-8') as file_obj:
    file_obj.write('hello hello how are you!')

执行结果为:
image.png
打开demo.txt看一下,发现之前的内容就没有了,只有新写入的内容:
image.png
总结:w 表示是可写的,使用w来写入文件时,如果文件不存在会创建文件,如果文件存在则会截断文件,截断文件指删除原来文件中的所有内容;

file_name = 'demo3.txt'

with open(file_name , 'w' , encoding='utf-8') as file_obj:
    file_obj.write('aaa\n')
    file_obj.write('bbb\n')
    file_obj.write('ccc\n')
    r = file_obj.write(str(123)+'123123\n')
    r = file_obj.write('今天天气真不错')
    print(r)

执行结果为:
image.png
这里介绍一些其他的格式,可以自己尝试一下,也可以 点击这里 查看它们的具体用法:

1、w 表示是可写的,使用w来写入文件时,如果文件不存在会创建文件,如果文件存在则会截断文件,截断文件指删除原来文件中的所有内容;
2、a 表示追加内容,如果文件不存在会创建文件,如果文件存在则会向文件中追加内容;
3、x 用来新建文件,如果文件不存在则创建,存在则报错;

+为操作符增加功能
r+ 即可读又可写,文件不存在会报错
w+ 在写的基础上加读的功能
a+ 在追加的功能上加读的功能

点击查看配套视频课程

获取更多Python有关的内容,请订阅Python学习站官方技术圈!

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
Python学习站
使用钉钉扫一扫加入圈子
+ 订阅

Python学习资料大全,包含Python编程学习、实战案例分享、开发者必知词条等内容。

官方博客
官网链接