Python中的文件读写

三大模式

r:只读模式

w:创建模式,若文件存在,则覆盖旧文件

a:追加模式,新数据写到文件末尾

python 复制代码
f=open("name_list",mode="w")

f.write("Lu Mingfei\n")
f.write("Lu Mingze\n")
f.write("Chen Wenwen\n")

f.close()

name_list.txt

python 复制代码
Lu Mingfei
Lu Mingze
Chen Wenwen

追加模式

python 复制代码
"""
追加模式
"""
f=open("name_list","a")

f.write("heheh\n")
f.write("jack")
# io.UnsupportedOperation: not readable,
print(f.read())
f.close()

name_list.txt

python 复制代码
Lu Mingfei
Lu Mingze
Chen Wenwen
heheh
jack

读文件

python 复制代码
"""
读文件
"""

f=open("name_list","r")
print(f.read())# 读出所有内容
"""
Lu Mingfei 
Lu Mingze  
Chen Wenwen
heheh      
jack 
"""

读文件二

superman.txt

python 复制代码
1. Ma 慕尼黑 50 123@qq.com
2. Qdl 爱丁堡 52 456@qq.com
3. Logistic 神奈川 49 790@qq.com
4. Luuly 洛杉矶 48 555@qq.com
5. Yeyedan 哥谭 54 321@qq.com
6. jerry 芝加哥 52 598@163.com
7. outama 西雅图 49 777@163.com

遍历文件

python 复制代码
"""
遍历文件
"""

"""
readlines():读所有行
[第一行,第二行,...,...]
['1. Ma 慕尼黑 50 123@qq.com\n', '2. Qdl 爱丁堡 52 456@qq.com\n', ...]
"""
f=open("superman.txt",encoding="utf-8")
print(f.readlines())


"""
1. Ma 慕尼黑 50 123@qq.com        
2. Qdl 爱丁堡 52 456@qq.com       
3. Logistic 神奈川 49 790@qq.com  
4. Luuly 洛杉矶 48 555@qq.com     
5. Yeyedan 哥谭 54 321@qq.com     
6. jerry 芝加哥 52 598@163.com    
7. outama 西雅图 49 777@163.com 
"""
f2=open("superman.txt",encoding="utf-8")
for line in f2:
    # end="" 表示 print 函数在打印完 line 之后不添加任何字符,也就是不换行。
    print(line,end="")
print("\n")



"""
多个列表,每一行是一个列表
['1.', 'MaQianxi', 'shenzhen', '173', '50', '13744234523']
['3.', 'LuoXinzu', 'beijing', '175', '49', '18623423421']
['4.', 'LuoNuohan', 'beijing', '170', '48', '18623423765']
['7.', 'YeZixuan', 'shanghai', '171', '49', '18042432324']
"""
f3=open("superman.txt",encoding="utf-8")
for line in f3:
    # 把当前读取的一行,转为list形式
    line=line.split()
    age=int(line[2])
    if age>=50 and age <=100:
        print(line)

写二进制文字

python 复制代码
#wb 写入二进制文件的模式
f=open("byteFile.txt","wb")

str="卡塞尔学院"
print(str.encode("utf-8"))
f.write(str.encode("utf-8"))

byteFile.txt

python 复制代码
卡塞尔学院
相关推荐
用户83562907805114 小时前
Python 实现 PDF 文件加密与解密方法
后端·python
用户83562907805115 小时前
使用 Python 冻结与拆分 Excel 窗格教程
后端·python
karry_k15 小时前
MyBatis批量insert-select踩坑:useGeneratedKeys=true 可能让PostgreSQL返回大量插入结果
java·后端
karry_k15 小时前
PostgreSQL 在 MyBatis 中执行正常 SQL 失效:一次 DELETE USING 踩坑记录
java·后端
SamDeepThinking18 小时前
从源码到代码:MyBatis-Flex 与 MyBatis-Plus 的逐项对比
java·后端·程序员
她的男孩21 小时前
Spring Boot 接 Flowable 工作流:用 3 个注解搭一个请假审批流程
java·后端·架构
你好潘先生1 天前
别再记命令了,用 yeero do 说句人话就能跑脚本,而且不烧 token
服务器·python·命令行
Agent_大师1 天前
WebSocket 行情重连成功,K线缺口不会自动消失
python
荣码1 天前
LLM结构化输出:让AI返回JSON而不是废话,我踩了4个坑
java·python