Python学习笔记文件操作
随笔记录方便自己和同路人查阅。
#------------------------------------------------我是可耻的分割线-------------------------------------------
文件操作有创建、写入、关闭
创建时可指定模式‘r‘为读模式、‘w’为写模式(此模式多次写入会覆盖以后内容)、‘a’模式为可读可写模式
#------------------------------------------------我是可耻的分割线-------------------------------------------
1、创建文件
(1)无路径创建文件(源码所在路径C:\Users\Administrator\PycharmProjects\test\day3)
1 | song = open ( 'text_day1.txt' , 'w' ,encoding = 'utf-8' ) |
open()函数,如果文件存在打开此文件,如果文件不存在创建文件并打开,'text_day1.txt'为打开的文件名,'w'为打开方式,encoding='utf-8'为指定编码格式
运行结果:
会在默认路径下创建一个text_day1.txt文件(C:\Users\Administrator\PycharmProjects\test\day3会自动创建)
(2)在指定路径下创建文件
1 | song = open ( 'E:\\Python_temporary\\text_day1.txt' , 'w' ,encoding = 'utf-8' ) |
运行结果:
会在E:\\Python_temporary创建text_day1.txt文件
2、文件写入
(1)‘w’模式写入
1 2 | song = open ( 'E:\\Python_temporary\\text_day1.txt' , 'w' ,encoding = 'utf-8' ) song.write( 'hello' ) |
运行结果:在E:\\Python_temporary\\text_day1.txt文件中写入了hello内容
使用此种方式写入,文件原内容会被覆盖(慎用),不信你可以试一下
(2)‘a’模式写入
1 2 3 | song = open ( 'E:\\Python_temporary\\text_day1.txt' , 'a' ,encoding = 'utf-8' ) song.write( 'hello 1\n' ) song.write( 'hello 2\n' ) |
运行结果:此种方式为追加模式,写入内容会被追加到后面(但不会自动换行) \n帮助换行
3、文件读取
(1)read()函数读取
1 2 | song = open ( 'E:\\Python_temporary\\text_day1.txt' , 'r' ,encoding = 'utf-8' ).read() print (song) |
运行结果:输出了hello,是因为我文件中内容就是hello
(2)只读前五行(使用五环之歌歌词作为读取内容)
1 2 3 | song = open ( 'E:\\Python_temporary\\五环之歌.txt' , 'r' ) for i in range ( 5 ): print (song.readline(),end = '') |
运行结果:
(3)readlines()函数,此函数会把读取的内容存为列表
1 2 3 | song = open ( 'E:\\Python_temporary\\五环之歌.txt' , 'r' ) for line in song.readlines(): #readlines()读取文件后把每一行作为一个元素存为列表 print (line.strip()) #strip()函数去除所有的空格和换行 |
运行结果:
(4)指定某一行打印自己想要的
1 2 3 4 5 6 7 8 | song = open ( 'E:\\Python_temporary\\五环之歌.txt' , 'r' ) #读取文件 count = 0 #计数 for line in song: #循环 count + = 1 #计数加一 if count = = 9 : #如果计数等于9打印下面内容并continue跳过 print ( '----------我是分割线--------' ) continue print (line) |
(5)closs()函数关闭
4、文件的其他用法
()
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异