您的位置:首页 > 其它

习题十五~习题十七

2016-01-28 00:00 127 查看
摘要: 文件操作

文件操作的流程是打开文件,文件操作,关闭文件。

打开文件open:

open帮助文档

open(...)
open(name[, mode[, buffering]]) -> file object

Open a file using the file() type, returns a file object. This is the
preferred way to open a file. See file.__doc__ for further information.

意为打开文件后,返回一个文件对象,就是说open()就可以指代这个打开的文件,因此后续的文件操作都以open()为对象,为了方便,通常把这个文件对象赋给一个变量,如:

file = open(filename)

这样就不用每一次操作都输入open()函数了,而且想要换一个文件进行操作时只需对变量进行改变即可。

帮助文档中标明函数有三个参数,第一个是文件名,第二个是打开模式,第三个参数用来控制文件的缓冲(一般不用)。

文件名:

默认的文件搜索路径是脚本所在的文件夹,所以只要脚本文件和要操作的文档文件在一个文件夹,括号内直接输入文件名即可,当文档文件和脚本文件在不同文件夹时,用追溯的方法确定文件位置:

text = open("python.txt")#同一文件夹
text = open("../yanyuxing/python.txt")#上溯
text = open("yuanchuang/python.txt")#下探
text = open("E://python.txt")#其它磁盘

注意到,文件名都用引号括起来,因为它必须为字符串格式,所以文件名的输入常用raw_input和argv,这样文件名就自动转化为字符串格式了:

from sys import argv
script, filename = argv
text = open(filename)

filename = raw_input(">")
text = open(filename)

open模式参数:

在open( )的括号中加入不同的模式参数,才可以对文件进行对应的操作,可以说模式参数是文件操作的灵魂。

下面只介绍常用的几种:w, r, a,w+,r+,a+

r:即read,读取模式,这是open函数的缺省(默认)参数,不规定参数时,文件默认为读取模式。

w:即write,写入模式,会自动清除文件元来的内容,相当于新建。

a:即append,追加模式,写入的内容附加在文件的末尾,没有此文件时自动创建。

r+:以读写方式打开文件,文件可读可写,可写到文件的任何位置。

w+:以读写方式打开文件, 和r+不同的是,写文件时它会首先清空文件。

a+:以读写方式打开文件, 和r+不同的是,它只能写到文件末尾。

文件操作方法:

write( ):打开模式为写入或读写时使用,可以向文件中写入文本。写入的内容以字符串的形式放入括号中。

read(size):读取文件,打开模式为读取或读写时使用。

不设置size时,默认读取整个文件,设置size时,size为读取的字节数。

read( )输出字符串。

x = open("../yanyuxing/python.txt")
text = x.read()
print type(text)
x.close()

运行结果:





x = open("../yanyuxing/python.txt")
text = x.read()
print text
x.close()

运行结果:



readline(size):按行读取文件,打开模式为读取或读写时使用。

不设置size时,默认读取第一行文件,设置size时,size为读取的字节数。

readline( )输出字符串。

x = open("../yanyuxing/python.txt")
text = x.readline()
print type(text)
x.close()

运行结果:





x = open("../yanyuxing/python.txt")
text = x.readline()
print text
x.close()

运行结果:



读取完一行后,系统读取光标移到下一行的开头0位置,下次读取从第二行开始:

x = open("../yanyuxing/python.txt")
for i in range(4):
text = x.readline()
print text
x.close()

运行结果:





readlines(size):按行读取文件,打开模式为读取或读写时使用。

不设置size时,默认读取第一行文件,设置size时,size为读取的字节数。

readlines( )输出带换行符的列表(之后讲到)。

x = open("../yanyuxing/python.txt")
text = x.readlines()
print type(text)
x.close()

运行结果:





x = open("../yanyuxing/python.txt")
text = x.readlines()
print text
x.close()

运行结果:



注意到文中每行末尾都有系统默认加上的换行符\n,因此readline( )读取行时,读取到\n会换行从而显示出一个空行:

x = open("../yanyuxing/python.txt")
text = x.readline()
print text[-1]
x.close()

运行结果:





truncate( ):清空文件。

file.truncate()

关闭文件:

close( ):关闭文件,相当于保存,文件操作完成后的关闭是很有必要的。

file.close()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: