首页 > 编程 > Python > 正文

Python 文件和输入输出小结

2020-02-23 04:54:44
字体:
来源:转载
供稿:网友

1.打开和关闭文件(open(),file(),close())

有两种内建函数可以获取文件对象:open和file。他们的用法完全一样。下面只以open()为例子讲解。获取一个文件对象(打开文件)的语法如下:       

代码如下:fileObj = open(filename,access_mode='r',buffering=-1) 

filename不用说你也应该知道是你要打开文件的路径。
access_mode用来标识文件打开的模式,默认为r(只读)。

常用的模式如下表所示:

文件模式解释
r以只读方式打开
w以写方式打开,文件不为空时清空文件;文件不存在时新建文件。
a追加模式,没有则创建
r+,w+,a+以读写模式打开,参见w,a

另外还有一个b表示二进制模式访问,但是对于Linux或者unix系统来说这个模式没有任何意义,因为他们把所有文件都看作二进制文件,包括文本文件。


第三个参数不经常用到,标识访问文件的缓冲方式,0代表不缓冲,1代表缓
冲一行,-1代表使用系统默认缓冲方式。只要使用系统默认就好。

一些例子:

代码如下:
>>> f = open('/etc/passwd','r')
>>> f1 = open('/etc/test','w')

使用完文件后,一定要记得关闭文件,操作如下:

代码如下:
>>> f.close()

2.文件读入

2.1.file.read(size = -1)
    读取从当前文件游标起size个字节的文件内容。如果size=-1,则读取所有剩余字节。

代码如下:
>>> f = open('/etc/passwd')
>>> f.read(100)
'root:x:0:0:root:/root:/bin/bash/nbin:x:1:1:bin:/bin:/sbin/nologin/ndaemon:x:2:2:daemon:/sbin:/sbin/nol'

2.2.file.readlines(size=-1)

    从文件中读取并返回一行(包括行结束符),或返回最大size个字符

代码如下:
>>> f.readline()
'ogin/n'#和上面一个例子输出的最后拼起来就是  'nologin',因为游标在l后面。
>>> f.readline(1)
'a'

2.3.file.readlines(sizhint=0)
    读取文件所有的行,并作为一个列表返回(包括行结束符),如果sizhint>0则返回总和大约sizhint字节的行(具体由缓冲区大小决定)。

代码如下:
f.readlines()
['dm:x:3:4:adm:/var/adm:/sbin/nologin/n', 'lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin/n', 'sync:x:5:0:sync:/sbin:/bin/sync/n', 'shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown/n', 'halt:x:7:0:halt:/sbin:/sbin/halt/n', 'mail:x:8:12:mail:/var/spool/mail:/sbin/nologin/n', ......

输出省略。

3.文件输出

3.1.file.write(str)

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表