文件的读取

文件:文本文件,视频文件,音频文件,图像文件,可执行文件等

文件的操作包含:打开,读写,关闭

文件的读取:

open("文件名称",'操作类型',‘文件的编码格式’)

文件的关闭

文件变量 .close()

在文件读取时遇到的问题:

文件读取时,如果文件和程序在同意目录下可以直接使用文件名称读取,如果没有需要使用文件的绝对路径,文件的绝对路径写入时一般使用‘\\'或者是‘/’来使用,,,或者使用r字符串路径的形式使用

操作类型:r:只读   w:写入   a:追加

w:写入,如果文件以及存在则覆盖原有的文件内容,重新写入

a:追加,如果文件已有则在原有的内容后追加

读取:

文件对象.read(【num】):读取文件如果不写num则读取全部文件,如果写了读取指定长度的文件,换行符也算是一个字符

f=open("text","r",encoding="UTF-8")
# data=f.read()
data2=f.read(6)  # 读取6的长度包含换行符
# print(data)
# print(type(data))
print(data2)

# 文件的关闭
f.close()

读取时靠内部的指针来找到读取的位置在哪里,如果第一遍读取到了所有内容则第二个读取为空,需要文本变量调用seek(0)使指针从零开始进行第二次读取

f=open("text","r",encoding="UTF-8")
# data=f.read()
data2=f.read() # 读取6的长度包含换行符
f.seek(0)
data3=f.read()  # 读取6的长度包含换行符
# print(data)
# print(type(data))
print(data2)
print(data3)

readlines()

按照行的方式读取全部文件,并返回为一个列表,其中每一行数据就为一个元素

# readlines读取
# 读取文件
data=open('text','r',encoding='utf-8')
data1=data.readlines()
print(data1)
print(type(data1))
# 关闭文件
data.close()

readline()每次读取一行的内容

#读取文件每次读取一行
data=open('text','r',encoding='utf-8')
data2=data.readline()
data3=data.readline()
print(data2)
print(data3)
data.close()

for 循环读取

for line in open():

        print(line)

每个line中存储的就是文本的一行数据

将文本以字典的形式输出

以字典的形式输出

d={}
for i in open("name",'r',encoding='utf-8'):
    s=i.strip() # 去除换行
    # print(s)
    line=s.split(',') # 去除逗号
    # print(line)
    d[line[0]]=(line[1],line[2]) # 因为是括号所以值是元组
print(d)

with open操作

with open() as f:

      f.readlines()

使用with open操作当文件读取结束后会自动关闭文件,避免遗忘close操作

# 使用with open  方法
with open("name","r",encoding="UTF-8") as f:
    line=f.readlines()
    print(line)

返回一个列表

更多推荐