文件的打开关闭
文件处理的步骤:打开——操作——关闭,文件的操作又包括读文件和写文件
1.文件的打开
<变量名>=open(<文件名>,<打开模式>)
其中文件名是指文件的路径和名称,文件的路径又包括绝对路径和相对路径。
绝对路径:
eg.有一个文件存储在windows的:D:\PYE\f.txt
则在python中调用该文件的绝对路径时:1.“D:/PYE/f.txt
2.D:\PYE\f.txt
因为在python中反斜杠"“是转义字符,不代表其本身的含义,所以可以用斜杠”/“来代替或者用双反斜杠使其代表原有含义
相对路径:
eg.”./PYE/f.txt"
2.文件的打开模式
几个小例子:
f=open(“f.txt”) -默认值,文本形式,只读模式
f=open(“f.txt”,“rt”) - 文本形式,只读模式,同默认值
f=open(“f.txt”,“w”) -文本形式,覆盖写模式
f=open(“f.txt”,“a+”) -文本形式,追加写模式+读文件
f=open(“f.txt”,“x”) -文本形式,创建写模式
f=open(“f.txt”,“b”) -二进制形式,只读模式
f=open(“f.txt”,“wb”) -二进制形式,覆盖写模式
3.文件的关闭
<变量名>.close()
若文件打开后忘记关闭,则文件一直处于打开状态,直至退出程序的编写,此时python解释器会将打开的文件自动关闭。
文件的操作–读取与写入
1.文件的读取
遍历全文本的方法:
方法一:
eg.fnam=input(“请输入要打开的文件名称:”)
fo=open(fnam,“r”)
txt=fo.read()
#对全文本进行处理
fo.close()
方法二:(按数量读入,逐步处理)
eg.eg.fnam=input(“请输入要打开的文件名称:”)
fo=open(fnam,“r”)
txt=fo.read(2)
while txt !=" ":
#对txt进行处理
txt=fo.read(2)
fo.close( )
每次读取文本的两个字节,只要不遇到空字符就持续读取
逐行遍历文件:
方法一:
eg.fname=input(“请输入要打开的文件名称:”)
fo=open(fname,“r”)
for line in fo.readlines():
print(line)
fo.close( )
方法二:
eg.fname=input(“请输入要打开的文件名称:”)
fo=open(fname,“r”)
for line in fo:
print(line)
fo.close( )
2.文件的写入
eg.fo=open(“output.txt”,“w+”)
ls=[“中国”,“法国”,“美国”]
fo.writelines(ls)
fo.seek(0)
for line in fo:
print(line)
fo.close( )
若是没有fo.seek(0)语句,此最后是没有输出结果的。因为当我们写入的时候,指针最后停留在文件的结尾处,再次遍历输出文件内容是空的,所以需要把指针调整到文件开头。