Python_文件操作
创始人
2024-03-13 17:19:33

目录

一、文件编码

二、什么是文件

三、文件操作

1、打开文件 open()打开函数

2、读取文件

3、写入文件 f.write() 使用w模式

4、文件追加 类比文件写入,只是将‘w’-->‘a’

5、文件操作综合案例

一、文件编码

Thinking: 计算机只能识别 0和1,那么文本文件 如何被计算机识别存储在硬盘中? 利用编码技术(密码本)将内容翻译成0和1存入 编码技术:翻译的规则,记录了如何将内容翻译成二进制,以及如何将二进制翻译回可识别内容 计算机内有许多可用编码: * UTF-8 * GBK * Big5  等 不同的编码将内容翻译成二进制也是不同的 编码有许多,要正确使用编码才能进行正确的读写操作 UTF-8是目前比较通用的编码格式 总结以下两个问题 1、什么是编码? 编码就是一种集合规则,记录了内容和二进制之间进行相互转换的逻辑;编码有许多种,我们最常用的是UTF-8编码 2、为什么需要使用编码? 计算机只认识0和1,所以需要将内容翻译成0和1才能保存在计算机中。同时也需要编码将计算机保存的0和1,反向翻译回可以识别的内容。

二、什么是文件

文件是指一个可以独立操作的程序,可以是文本、图片、声音、视频等,不同的文件可以用不同程序打开。操作系统以文件为单位管理磁盘中的数据。

三、文件操作

文件操作主要包括打开、关闭、读、写等操作

1、打开文件 open()打开函数

在Python,使用open函数,可以打开一个已经存在的文件,或者创建一个新文件夹 语法:open(name,mode,encoding)
  • name: 是要打开的目标文件名的字符串(可以包含文件所在的具体路径)
  • mode: 设置打开文件的模式(访问模式):只读、写入、追加等
  • encoding:编码格式(推荐使用UTF-8)
示例代码: 注意:此时的‘f’是‘open’函数的文件对象,对象是Python中一种特殊的数据类型,拥有属性和方法,可以使用对象.属性 或 对象.方法对其进行访问。后续会详细记录面向对象笔记。 mode 常用的三种基础访问模式

2、读取文件

1.读操作相关方法 1)read() 方法: 文件对象.read(num) num表示要从文件中读取的数据的长度(单位是字节),如果没有传入num就表示读取文件中所有的数据 2)readlines() 方法: readline可以按照行的方式把整个文件中的内容进行一次性读取,并且返回的是一个列表其中每一行的数据一个元素。 3)readline() 方法:一次读取一行内容 4)for循环读取文件行 5)close() 关闭文件对象 关闭对文件的占用。如果不调用close(),同时程序没有停止运行,那么这个文件将一直被Python占用 6)with open 语法: with open(name,mode,encoding)as f: f.readlines() 通过在with open的语句块中对文件进行操作,可以在操作完成后自动关闭close文件,避免忘记使用close()方法 操作汇总: 代码演示:
# 打开文件
f = open("D:\Test\Python_test.txt","r",encoding="UTF-8")
print(type(f))
# 读取文件 - read()
print(f"read读取10个字节结果是:{f.read(10)}")
print(f"read读取全部字节结果是:{f.read()}") # 连续调用read会从上一个read的结尾处开始
# 读取文件 - readlines()
lines = f.readlines() # 读取文件的全部行 封装到列表中
print(f"lines的对象类型是:{type(lines)}")
print(f"lines对象内容是:{lines}") # 文件读取就想有个小指针记录读取的位置
# 读取文件 - readline()
line1 = f.readline()
line2 = f.readline()
line3 = f.readline()
print(f"第一行数据是:{line1}")
print(f"第二行数据是:{line2}")
print(f"第三行数据是:{line3}")
# for循环读取文件行
for line in f:print(f"每一行数据:{line}")
# 文件的关闭 close()
time.sleep(30)
f.close()
# with open语法操作文件
with open("D:\Test\Python_test.txt","r",encoding="UTF-8") as f:for line in f:print(line)

3、写入文件 f.write() 使用w模式

注意:
  • 直接调用write,内容并未真正写入文件,而是会积攒在程序内存中,称之为缓冲区
  • 当调用flush的时候,才会真正将内容写入文件
  • 这样做避免频繁操作硬盘导致效率下降
close()方法内置了flush() with open as f 包括了close() w --如果文件不存在 会直接创建并写入内容; # 打开一个并不存在的文件 --创建 with open('D:/Test/write.txt',"w",encoding='UTF-8') as f:     f.write("hello puuoo") # close()方法内置了flush() 如果文件存在则会清空原来的内容再写入 

4、文件追加 类比文件写入,只是将‘w’-->‘a’

注意: a模式,文件不存在会创建文件 a模式,文件存在会在最后追加写入文件

5、文件操作综合案例

完成文件备份案例 有一份账单文件,记录了消费收入 需求:


相关内容

热门资讯

埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...
应用未安装解决办法 平板应用未... ---IT小技术,每天Get一个小技能!一、前言描述苹果IPad2居然不能安装怎么办?与此IPad不...
脚上的穴位图 脚面经络图对应的... 人体穴位作用图解大全更清晰直观的标注了各个人体穴位的作用,包括头部穴位图、胸部穴位图、背部穴位图、胳...
猫咪吃了塑料袋怎么办 猫咪误食... 你知道吗?塑料袋放久了会长猫哦!要说猫咪对塑料袋的喜爱程度完完全全可以媲美纸箱家里只要一有塑料袋的响...
demo什么意思 demo版本... 618快到了,各位的小金库大概也在准备开闸放水了吧。没有小金库的,也该向老婆撒娇卖萌服个软了,一切只...
世界上最漂亮的人 世界上最漂亮... 此前在某网上,选出了全球265万颜值姣好的女性。从这些数量庞大的女性群体中,人们投票选出了心目中最美...
埃菲尔铁塔在哪 中国仿建埃菲尔... 2019年4月26日,广西南宁市,街头惊现一座巨型山寨版埃菲尔铁塔,高约20米,白色塔身,造型逼真,...
苗族的传统节日 贵州苗族节日有... 【岜沙苗族芦笙节】岜沙,苗语叫“分送”,距从江县城7.5公里,是世界上最崇拜树木并以树为神的枪手部落...
北京的名胜古迹 北京最著名的景... 北京从元代开始,逐渐走上帝国首都的道路,先是成为大辽朝五大首都之一的南京城,随着金灭辽,金代从海陵王...
长白山自助游攻略 吉林长白山游... 昨天介绍了西坡的景点详细请看链接:一个人的旅行,据说能看到长白山天池全凭运气,您的运气如何?今日介绍...