Python合集之文件操作(二)

1.打开文件使用with语句

打开文件后,要及时将其关闭,如果忘记关闭可能会带来意想不到的问题。另外,如果在打开文件时,抛出异常,那么将导致文件不能及时被关闭。为了更好的避免此类问题发生,可以使用Python提供的with语句,从而实现在处理文件时,无论是否抛出异常,都能保证with语句执行完毕后关闭已经打开的文件。with语句的基本语法格式如下:

with expression as target:
    with-body
参数说明:
expression:用于指定一个表达式,这里可以是打开文件的open()函数。
target:用于指定一个变量,并且将expression的结果保存到该变量中。
with-body:用于指定with语句体,其中可以是with语句后相关的一些操作语句。如果不想执行任何语句,可以直接使用pass语句代替。
print("
","="*10,"蚂蚁庄园动态","="*10)
with open('message.txt','w') as file:
    pass
print("
 即将显示。。。
")

2.写入文件内容

Python的文件对象中提供了write()方法,可以向文件中写入内容。write()方法的语法格式如下:

file.write(string)
参数说明:
file:为打开文件的对象
string:为要写入的字符串

注:在调用write()方法向文件中写入内容的前提是在打开文件时,指定的打开模式为 w 或者 追加 a 。

print("
","="*10,"蚂蚁庄园动态","="*10)
file=open('message.txt','w')
file.write("你是用了一张加速卡。。。")
print("
 写入了一条动态。。。")
file.close()

注:在写入文件后,一定要调用close()方法关闭文件,否则写入的内容不会保存到文件中,这是因为当我们在写入文件内容时,操作系统不会立刻把数据写入到磁盘,而是先缓存起来,只有调用close()方法时,操作系统才会保证把没有写入的数据全部写入到磁盘。

在想文件中写入内容后,如果不想马上关闭文件,也可以先调用文件对象提供的flush()方法,把缓存去的内容写入文件,这样也可以保证数据全部写入到磁盘。

print("
","="*10,"蚂蚁庄园动态","="*10)
file=open('message.txt','a')
file.write("minggi的小鸡在你庄园待了22分钟。。。")
print("
 写入了一条动态。。。")
file.close()

注:在Python的文件对象中除了提供了write()方法,还提供了writelines()方法,可以实现把字符串列表写入文件,但是不添加换行符。

花絮:

本期的Python文件的处理就分享到这里,下期我们将继续分享Python文件的相关知识,感兴趣的朋友可以关注我。

同时也可以关注下我的个人 微信订阅号,园子里面的文章也会第一时间在订阅号里面进行推送跟更新。

原文地址:https://www.cnblogs.com/a-mumu/p/14724865.html