Python 全栈开发:python文件处理

python学习网 2018-03-23 14:21:04

python文件处理

打开文件的模式

file常用函数

 

一、打开文件,关闭文件

操作文件的流程:

#1. 打开文件,得到文件句柄并赋值给一个变量
#2. 通过句柄对文件进行操作
#3. 关闭文件

open()方法:返回一个file对象

语法格式:

#file = open(filename,mode,encoding)    #打开文件

#文件操作    文件的读和写            

#file.close()                  #关闭文件

常用参数

filename: 要打开的文件名称(文件的路径)

mode: 打开文件的模式(见上图)

encoding:打开文件的编码格式

二、file读操作(文本)

大前提,被读取的文件 a.txt 已存在

a.txt 文件内容

这一个可读的文件11
这一个可读的文件22
这一个可读的文件33

 

f.read()      读取文件的所有字符

#打开文件(前提 a.txt 存在)
f = open('a.txt',mode='r',encoding='utf-8')
print(f.read())
f.close()

f.readline()    读取文件中的一行

f = open('a.txt',mode='r',encoding='utf-8')
print(f.readline())
f.close()

f.readlines()    读取文件中的所有行,并以        行        为单元素返回一个列表

f = open('a.txt',mode='r',encoding='utf-8')
print(f.readlines())
f.close()

循环读取

f = open('a.txt',mode='r',encoding='utf-8')
for i in f:
    print(i)    
f.close()

指针

f = open('a.txt',mode='r',encoding='utf-8')

print(f.readline(),end='')
print(f.readline(),end='')
print(f.readline(),end='')
print(f.readline(),end='')
print(f.readline(),end='')

f.close()

从上面的结果中我们可以看到 ,我们一共读取了 5 行  ,只显示了三行 。因为在文件读取过程中有个指针,文件读到了哪里,指针就会指到哪里,读取三行以后,指针已经在文件的末尾了,此时在进行文件的读操作将不会有任何内容。

结论:读到哪里,指针就指到哪里,指针在末尾,将读取不到内容

 

小结:

r:默认的打开模式,只读模式
注意:当文件不存在时,报错

 

三、file写操作(文本)

 只写模式(w)

f.write()

f.writelines()

f=open(r'a1.txt',mode='w',encoding='utf-8') #默认是wt
f.write('第一行\n')
f.write('第二行\n')
f.writelines(['1111\n','2222\n','3333\n'])  # 向文件写入字符串列表
f.write('aaaaa\nbbbb\nccccc\n')

小结:

w:只写模式
1、当文件存在时,清空
2、当文件不存在时,创建空文档

 

追加模式(a)

#a:只追加写模式
#注意:
#在文件不存在时,创建空文件
#在文件存在时,光标直接跑到文件末尾

f=open('access.log',mode='a',encoding='utf-8')
# print(f.writable())
# f.readlines() #报错
f.write('5555555555555\n')
f.close()

小结:

a:只追加写模式
1、当文件存在时,不清空,在末尾添加
2、当文件不存在时,创建空文档,在末尾添加

四、file读操作(二进制)

五、file写操作(二进制)

 

未完待补充

 

阅读(766) 评论(0)