文件操作(python)

一、文件的类型
1 、文本文件:基于字符编码、存储的是普通字符串、不包括字体、字号、颜色、样式等信息,可通过文本编 辑器显示和编辑。
2 、二进制文件:基于值编码的,以字节形式存储、其编码长度根据值得大小长度可变。如.jdp/.avi 图片视频文件
二、文件的操作
使用open()函数打开(或建立)文件,返回一个file对象;
使用file对象的读/写方法对文件进行读/写操作
使用file对象的close()方法关闭文件
#实例一、读出Stu_pack里的文本文件‘See You Again.txt’
#打开文件(英文和中文不一样)
#绝对路径
#open('C:\\Users\\yzkj\\Desktop\\吴贞贞2021110205083\\Stu_pack\\See You Again.txt')
#open('C:/Users/yzkj/Desktop/吴贞贞2021110205083/Stu_pack/See You Again.txt')
#open(r'C:\Users\yzkj\Desktop\吴贞贞2021110205083\Stu_pack\See You Again.txt')
#相对路径
#file = open('../Stu_pack/Dream It Possible.txt',encoding='utf-8')
file = open ( '../Stu_pack/Dream It Possible.txt' , 'rb' )
#(2)读文件
fr = file . readlines() #将文件一行为单位打印出来
#print(fr) #用print函数清洗换行
#常用此格式打印
for line in fr:
        print (line)
#(3)关闭文件
file . close()
#(4)即开既关的打开方式;
with open ( '../Stu_pack/万疆.txt' , 'rt' ,encoding = 'utf-8' ) as file:
file . readlines()
#实例二、读出Stu_pack里的二进制文件
from PIL import Image
# Image.open('../Stu_pack/Love_Star.PNG') #打开图像
im = Image . open( '../Stu_pack/Love_Star.PNG' ) #创建打开图像对象im
im . save( '../R&Q_pack/Love.png' ) #将生成的图片文件保存在指定路径里面
#实例三、写文本文件:向当前文件夹demo里写入文件test.txt,其内容为十行自己的学号姓名
f_w = open ( 'test.txt' , 'w' ,encoding = 'utf-8' ) #若文件不存在则新建文件,若有则重新
文件
for i in range ( 1 , 11 ):
        f_w . write( str (i) + ',2021110205083吴贞贞 \n ' )
#用with结构读出文件内容:
f_w . seek( 0 ) #将文件指针定位到文件开始位置
with open ( 'test.txt' ,encoding = 'utf-8' ) as file:
        print (file . read())
f_w . close()
三、 Excel 文件的读写
1 、第三方库的安装(读取: xlrd, 写入: xlwt
2实例一、读取 Excel 文件内容,将结果保存在列表中
       操作步骤:
          1 、导入模块 xlrd
          2 、打开工作簿 Book
          3 、制定工作簿中的工作表 Sheet
          4 、根据行列序号读取内容
#(1)导入模块xlrd
import xlrd
#(2)打开工作簿Book
wb = xlrd . open_workbook( '..\Stu_pack\school.xls' ) #创建打开文件的对象wb
#(3)制定工作簿中的工作表Sheet
sheet = wb . sheet_by_index( 0 ) #索引工作簿中的第一个工作表并创建对象,0表示第一
个,1表示第二个,2表示第三个
#(4)根据行列序号读取内容
schools = [] #定义一个二维列表存放工作表数据
for row in range (sheet . nrows): # sheet.nrows表示工作表总行数
        school = [] #定义一个一维列表存放每行内容(单元格内容)
        for col in range (sheet . ncols):
                content = sheet . cell_value(row,col) #读出单元格的具体内容
                school . append(content) #将读出的数据追加到school里面
        schools . append(school) #将每行的内容追加到二维列表schools里面
#(5)读出数据
for school in schools:
        print (school)
import xlrd
wb = xlrd . open_workbook( '../Stu_pack/school.xls' )
sheet = wb . sheet_by_index( 0 )
schools = []
for row in range (sheet . nrows):
        school = [] #定义1一个一维列表
        for col in range (sheet . ncols):
                content = sheet . cell_value(row,col) #读取每个单元格的数据存放在content中
                school . append(content) #将单元格中的数据追加到一维列表中
        schools . append(school)
#读取二维列表的数据前十行
#for school in schools[:10]:
# print(school)
i =1
for school in schools:
        if i <12 :
                print (school)
                i +=1
import pandas as pd
data = pd . read_excel( '../Stu_pack/school.xls' )
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

m0_68669533

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值