一.文件的类型(编码不同分类)
1.文本文件:基于字符编码,存储的是普通字符串,不包括字体,字号,样式,颜色等信息,可通过文本编辑器显示和编辑。如.tet/.py/.html/.csv/.xls/.xlsx
2.二进制文件:基于值编码的,以字节形式存储,其编码长度根据值的大小长度可变。如.jpg/.avi等图片,音频或视频文件
二.文件的操作
1.使用open()函数打开(或建立)文件,返回一个file对象:
2.使用file对象的读、写方法对文件进行读、写的操作:
3.使用file对象的close()方法关闭文件。
4.示例如下:
#文本文件的操作:
#给打开的文件设置对象名为file
#file = open('../Stu_pack/See You Again.txt') #用相对路径和斜杠描述文件所在的路径
#file = open(R'C:\Users\yzkj\Desktop\朱春斌2021110205123\Stu_pack\See You Again.txt') #用绝对路径和转义字符+反斜杠描述文件所在的路径
file = open('..\Stu_pack\Dream It Possible.txt',encoding = 'utf-8') #utf-8国际编码
#file.read() #用对象file的读取方法read()读出文件内容
#file.seek(0)
'''
f_r = file.readlines()
line in f_r:
print(line)
file.seek(0)
'''
print(file.read())
file.close() #关闭文件
#即开即关方式
with open('..\Stu_pack\万疆.txt','rt',encoding = 'utf-8') as file:
#print(file.read())
f_r = file.readlines()
for line in f_r:
print(line)
#二进制文件的操作:
from PIL import Image #导入第三方pillow库里面的Image图片模块
im = Image.open('../Stu_pack/Five_Star.png') #打开图片文件创建对象
im.save('Five_Star.png') #将打开的文件保存在当前文件夹demo里面
im.show() #在当前窗口显示图片
#示例三:写文本文件:向当前文件夹demo写入文件test.txt,其内容为10行自己的学号姓名,每行前面有序号
file = open('test.txt','w',encoding = 'utf-8') #新建文件并打开,创建文件对象
for i in range(1,11):
file.write(str(i)+'\t'+'2021110205123朱春斌'+'\n')
file.close() #关闭文件
with open('test.txt','rt',encoding = 'utf-8') as file:
f_r = file.readlines()
for line in f_r:
print(line)
三.Excel的读写
1.第三方库模块的安装(读取:xlrd,写入:xlwt)
#安装命令: pip install xlrd #安装读取Excel文件库xlrd pip install xlwt #安装写入Excel文件库xlwt
2.示例1:读取Excel文件内容,将结果保存以列表中
操作步骤:
(1)导入模块xlrd
(2)打开工作薄Book
(3)指定工作薄中的表单Sheet
(4)根据行列序列号读取内容
import xlrd #导入模块xlrd
wb = xlrd.open_workbook('../Stu_pack/school.xls') #打开工作薄Book
#用相对路径打开读取的文件school.xls并创建文件对象人wb
sheet = wb.sheet_by_index(0) #制定工作薄中的表单Sheet
#根据索引获取表单(0:第一个;1:第二个)
schools = [] #定义一个二维列表schools存放行和列
for row in range(sheet.nrows):
school = [] #定义一个一位列表存放单元格具体的值
for col in range(sheet.ncols):
content = sheet.cell_value(row,col) #根据行列序号读取内容
school.append(content) #通过列表方法append追加写入读取内容
schools.append(school) #以行为单元写入内容
for school in schools: #打印全部内容
print(school)