Python的文件管理

读取文件

首先我们可以先创建一个工程项目,如图所示:

打开我们名为1.读取文件.py的python文件,然后我们可以写下读取Python文件的代码,代码如下:

复制代码
f = open("1.txt", "r")
print(f.read())
f.close()

open可以打开我们项目下的文件,open括号里面传入的参数第一个是我们的文件名, 第二个是我们文件的打开方式,第二个参数可以是"r "(只读),也可以是"w "(只写),也可以是"w+ "(打开后,清空原有内容,成为一个新的空文件,对这个空文件具有读写权限),同样的还有r+ (打开后,可以读取文件内容吧,保存原有内容,追加写内容,写动作则是追加的新内容。其作用和**a+**基本相同。)

当然,我们还有另外一种方式可以读取文件,就是用with的方式:

复制代码
with open("1.txt", "r") as f:
    a = f.read()
    print(a)

同样可以传入2个参数,第一个参数仍然是文件名,第二个参数为文件获取方式,同样可以是'r' 只读,'w'写文件,和上面的一样。

中文乱码问题

如果大家在读取文件的时候遇到中文乱码的时候:

复制代码
with open("chinese.txt", "wb") as f:
    f.write("这是中文的,this is Chinese".encode("gbk"))
    
with open("chinese.txt", "rb", ) as f:
    print(f.read())
    #print(f.read().decode('gbk'))

更多的读写方式

复制代码
with open("new_file.txt", "r") as f:
    print(f.read())
with open("new_file.txt", "r+") as f:
    f.write("text has been replaced")
    f.seek(0)       # 将开始读的位置从写入的最后位置调到开头
    print(f.read())

|------|--------------------|
| mode | 意思 |
| w | (创建)写文本 |
| r | 读文本,文件不存在会报错 |
| a | 在文本最后添加 |
| wb | 写二进制 binary |
| rb | 读二进制 binary |
| ab | 添加二进制 |
| w+ | 又可以读又可以(创建)写 |
| r+ | 又可以读又可以写, 文件不存在会报错 |
| a+ | 可读写,在文本最后添加 |
| x | 创建 |

分享、在看与点赞

只要你点,我们就是胖友

来自: Python的文件管理https://mp.weixin.qq.com/s?__biz=Mzk0NTQ3OTk3MQ==&mid=2247485590&idx=1&sn=23e03612bbd193273436dc260533f8aa&chksm=c31580daf46209cc27780184562e9b9d1097ce6d617f66b715fdd58b9cbe4adadeed76cf80e7&token=355315523&lang=zh_CN#rd

相关推荐
巴勒个啦6 小时前
Vue 3.6 Vapor Mode 实战:我把一个 Vue3 项目的渲染性能提升了 4 倍
前端·angular.js
编码者卢布6 小时前
【Azure APIM】APIM的诊断日志与Application Insights的日志是否可以串联为一个端到端的日志链路呢?
python·flask·azure
不简说6 小时前
# JS 代码技巧 vol.7 — 20 个浏览器 API 实战,自带 API 能干的事别自己封装
前端·javascript·面试
CodexDave6 小时前
数据库连接池耗尽:排查顺序与三层兜底
服务器·前端·数据库·git·云原生·容器·kubernetes
weixin_307779136 小时前
Linux下Jenkins数据故障的系统化排查Shell脚本
linux·运维·服务器·jenkins
Hilaku7 小时前
为什么 Cloudflare 能做到毫秒级冷启动,而其它云厂商却不行?
前端·javascript·程序员
荒--7 小时前
Burp Suite(二)
linux·运维·服务器
2301_794461577 小时前
JavaScript 基础知识点详解
前端·javascript·html
FriendshipT7 小时前
Ultralytics:解读CBLinear模块
人工智能·pytorch·python·深度学习·目标检测
HjhIron7 小时前
在浏览器中跑DeepSeek-R1:用React+WebGPU实现端侧AI推理
前端·ai编程