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

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

文件的写入

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

file_name = 'demo.txt'

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

执行结果为:
文件的写入  | Python从入门到精通:高阶篇之四十九
程序报错了,此时要注意的是程序的打开文件的方式。
使用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!')

执行结果为:
文件的写入  | Python从入门到精通:高阶篇之四十九
打开demo.txt看一下,发现之前的内容就没有了,只有新写入的内容:
文件的写入  | Python从入门到精通:高阶篇之四十九
总结: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)

执行结果为:
文件的写入  | Python从入门到精通:高阶篇之四十九
这里介绍一些其他的格式,可以自己尝试一下,也可以 点击这里 查看它们的具体用法:

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

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

点击查看配套视频课程

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

上一篇:算法笔试模拟题精解之“正三角塔”


下一篇:算法笔试模拟题精解之“跳房子”