Python文件_持久与读写文件

一,持久性

我们见过的程序大多是很短暂的,它们往往只是运行那么一会,然后产生一些输出,等运行结束了,它们的数据就也都没了。如果你再次运行一个程序,又要从头开始了。

另外的一些程序就是持久的,它们运行时间很长,甚至一直在运行;这些程序还会至少永久保存一部分数据,比如存在硬盘上等等。

然后如果程序关闭了或者重新开始了,也能从之前停留的状态继续工作。这种有持久性的程序的例子很多,比如操作系统,几乎只要电脑开着,操作系统就要运行;

再比如网站服务器,也是要一直开着,等待来自网络上的请求。

程序保存数据最简单的方法莫过于读写文本文件,另一种方法就是把程序的状态存到数据库里面。

二,读写文件

文本文件就是一系列的字符串,存储在一个永久介质中,比如硬盘、闪存或者光盘之类的东西里面。

要写入一个文件,就必须要在打开它的时候用【w】作为第二个参数:

fout = open('output.txt', 'w')

如果文件已经存在了,这样用写入的模式来打开,会把旧的文件都清除掉,然后重新写入文件;同时,如果文件不存在,程序就会创建一个新的。

open 函数会返回一个文件对象,文件对象会提供各种方法来处理文件。write 这个方法就把数据写入到文件中了。

$ cat c.py

#!/bin/python

fout = open('output.txt', 'w')

line1 = 'this is one test, '

print(fout.write(line1))

$ python3 c.py

18

返回值18是已写入字符的数量。文件对象会记录所在位置,所以如果你再次调用write方法,会从文件结尾的地方继续添加新的内容。

查看本级目录,多了一个output.txt,这是刚才创建的。

$ ls

c.py output.txt

查看写入的文本内容:

dianzedeMacBook-Pro:python dianze$ cat output.txt

this is one test,          //这是刚才写入的文本内容

写完文件之后,你需要用 close 方法来关闭文件。

$ cat c.py

#!/bin/python

fout = open('output.txt', 'w')

line1 = 'this is one test, '

print(fout.write(line1))

fout.close()

如果不 close 这个文件,就要等你的程序运行结束退出的时候,它自己才关闭了。

结束。

原文地址:https://www.cnblogs.com/liusingbon/p/13214993.html