python3基础篇05(文件操作)

徘徊边缘 提交于 2020-02-03 08:31:48

文件操作

基本规则:

文件操作

打开文件:open(参数1,参数2,参数3)
参数1:指定文件
参数2:打开的模式
    r:读取模式,如果被打开的文件不存在,直接报错
    a:追加写入(在文件中原有的内容最后追加写入),被打开的文件不存在,会自动创建一个
    w:覆盖写入(清空文件中原有的内容),被打开的文件不存在,会自动创建一个
    
    # 操作一些图片,视频等文件
    rb:读取模式,如果被打开的文件不存在,直接报错(以二进制模式去打开文件)
    ab:追加写入(在文件中原有的内容最后追加写入),被打开的文件不存在,会自动创建一个(以二进制模式去打开文件)
    wb:覆盖写入(清空文件中原有的内容),被打开的文件不存在,会自动创建一个(以二进制模式去打开文件)

    
参数3:编码方式("utf-8")

 

1.打开一个文件

text文件内容

# 打开一个文件,返回一个操作的句柄
f = open(file="text.txt", mode="r", encoding="utf-8")
print(f) #显示打印内容的信息

结果:

 

2.读取文件内容的三种方式

(1)读取全部内容 read()

# 打开一个文件,返回一个操作的句柄
f = open(file="text.txt", mode="r", encoding="utf-8")

# 读取内容
# 第一种:读取全部的内容
content = f.read()
print(content)

 

结果:

 

(2)读取文件的一行

# 打开一个文件,返回一个操作的句柄
f = open(file="text.txt", mode="r", encoding="utf-8")

# #第二种:读取一行内容,默认为第一行
data = f.readline()
print(data)


# #参数代表这一行显示多少个字出来
data = f.readline(10)
print(data)

结果:

 

读取文件指定行的操作

#读取指定的某一行,使用linecache库
import linecache
file_path = r'D:K:\老师课程作业\pyclass\柠檬班\py24_08day\03文件操作\text.txt'#文件路径
line_number = 5#指定的行
getline = linecache.getline(file_path, line_number)
print(getline)

结果:

 

(3)把所有的内容按行读取出来放在列表中

# 打开一个文件,返回一个操作的句柄
f = open(file="text.txt", mode="r", encoding="utf-8")

#第三种:把所有的内容按行读取出来放在列表中
data2 = f.readlines()
print(data2)

结果:

 

按下标可以拿出对应的数据

#第三种:把所有的内容按行读取出来放在列表中
data2 = f.readlines()
print(data2)
print(data2[1])#按下标拿出对应的数据

结果:

 

3.文件写入

write

 

# 文件写入:写入前一定要先打开
# r:读取模式,如果被打开的文件不存在,直接报错
# a:追加写入(在文件中原有的内容最后追加写入),被打开的文件不存在,会自动创建一个
# w:覆盖写入(清空文件中原有的内容),被打开的文件不存在,会自动创建一个

#追加写入
f = open(file="text.txt", mode="a", encoding="utf-8")
f.write("python24期666")

#覆盖写入
#f = open('text.txt','w',encoding='utf-8')

结果:

txt文本

 

4.图片视频的写入操作

# 操作一些图片,视频等文件(# 以二进制模式去打开文件)
# rb: 读取模式, 如果被打开的文件不存在,直接报错(以二进制模式去打开文件)
# ab: 追加写入(在文件中原有的内容最后追加写入),被打开的文件不存在,会自动创建一个(以二进制模式去打开文件)
# wb: 覆盖写入(清空文件中原有的内容),被打开的文件不存在,会自动创建一个(以二进制模式去打开文件)

f = open('bj01.png', 'rb')
print(f.read())

结果:

 

5.关闭文件

打开文件后操作完后一般都需要去关闭文件

#关闭文件
f = open('bj01.png', 'rb')
f.close()

结果:

 

6.with

# with:开启open返回文件句柄对象的上下文管理器(执行完with的代码语句之后,会自动关闭文件)
with open(file="text.txt", mode="r", encoding="utf-8") as f:
    c = f.read()
    print(c)

结果:

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!