文件操作
打开
在python,使用open函数,可以打开一个已经存在的文件,或者创建一个新文件
f = open('test.txt','w')
r 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
w 打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
a 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
rb 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。这是默认模式。
wb 以二进制格式打开一个文件只用于写入。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
ab 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
r+ 打开一个文件用于读写。文件指针将会放在文件的开头。
w+ 打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
a+ 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。
rb+ 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。
wb+ 以二进制格式打开一个文件用于读写。如果该文件已存在则将其覆盖。如果该文件不存在,创建新文件。
ab+ 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。
关闭
# 新建一个文件,文件名为:test.txt
f = open('test.txt','w')
# 关闭这个文件
f.close()
我们再使用中可以采用with语法来操作文件
with open('test.txt','w') as f
进行文件操作
with语句结束会自动关闭文件,不会占用内存。
写
f = open('test.txt','w')
f.write('hello world, i am here!') #写入数据
f.close()
只有关闭后文件里面才有内容,如果还有其他的操作,需要flush() 讲数据刷新进入到文件中
读
read
使用read(num)可以从文件中读取数据,num表示要从文件中读取的数据的长度(单位是字节),如果没有传入num,那么就表示读取文件中所有的数据
f = open('test.txt','r')
content = f.read(5)
print(content)
print("-"*30)
content = f.read()
print(content)
f.close()
当我们的文件没有关闭的时候,可以继续读取。因为没有关闭,地区指针定位没有改变。
seek(offset, whence)有2个参数:offset:偏移量,whence:方向。whence:是可选参数,默认值为 0。给offset参数一个定义,表示要从哪个位置开始偏移;0代表从文件开头开始算起,1代表从当前位置开始算起,2代表从文件末尾算起。
seek在使用的时候就是一个坑,尤其是在python3中。我们一般很少对文件操作,如果对文件操作后期在数据分析的时候会学到。
readlines
就像read没有参数时一样,readlines可以按照行的方式把整个文件中的内容进行一次性读取,并且返回的是一个列表,其中每一行的数据为一个元素
readline
读取文件所有的数据,但是是以行的形式进行读取
文件夹操作
增
创建文件夹
os.mkdir("张三")
删
os模块中的remove()可以完成对文件的删除操作
remove(待删除的文件名)
删除文件夹
os.rmdir("张三")
改
文件重命名
os模块中的rename()可以完成对文件的重命名操作
rename(需要修改的文件名, 新的文件名)
改变默认目录
os.chdir("../")
查
获取当前目录
os.getcwd()
获取目录列表
os.listdir("./")