Python3:文件读写

Python3:文件读写

open

复制代码
f = open('filename','r') # 读模式
f = open('filename','w') # 写模式
f = open('filename','a') # 追加模式
 
注:rb 是以二进制读取
现在你觉得没用对吧,我也这么觉得。。。
but
在以后用到socket的时候,传输文件,读取和写入用的都是二进制形式
rb和wb可以更快速的进行文件的传输
复制代码

读取内容方式

f.read() # 一次读取整个文件,文件大不适用
f.readline() # 一次只读取一行,占内存小,速度慢
f.readlines() # 一次性读取,将内容分析成一个行的列表,可以由for...in...处理

写文件方式

f.write(content) # 不会换行哦
f.writeline(content) # 下次会写在下一行

close

f.close()

示例代码一:

复制代码
f = open('cdays-4-test.txt', 'r')                   #以读方式打开文件 
result = list() 
for line in f.readlines():                              #依次读取每行 
    line = line.strip()                                    #去掉每行头尾空白 
    if not len(line) or line.startswith('#'):       #判断是否是空行或注释行 
        continue                                            #是的话,跳过不处理 
    result.append(line)                                #保存 
result.sort()                                               #排序结果  
f.close()                     #关闭文件
with open('new_file.txt','w') as fw:            #with方式不需要再进行close
  fw.write('%s' % '\n'.join(result))     #保存入结果文件
复制代码

 示例代码二:

复制代码
#txtName:文件名,包含完整路径
#dataList:数据
def saveTxt(txtName,dataList):
    yyb_data = []
    if len(dataList)>0:
        for i in range(0,len(dataList)):
            yyb_data.append(dataList[i].v1 + "," + dataList[i].v2 + "," + dataList[i].v3 + "," + dataList[i].v4 + "," + dataList[i].v5 + "," 
            + dataList[i].v6 + "," + dataList[i].v7 + ","+ dataList[i].v8 + "," + dataList[i].v9 + "," + dataList[i].v10 + "," 
            + dataList[i].v11 + "," + dataList[i].v12 + "," + dataList[i].v13 + "," + dataList[i].v14+"\n")
    dbcfg = dbconfig()
    vrg_savePath=dbcfg[4]
    file = vrg_savePath+txtName
    if os.path.exists(file):
        os.remove(file)
    #解决编码问题encoding='utf-8'
    out = open(file, "a",encoding='utf-8')
    for row in yyb_data:
        out.writelines(row)
    out.close() 
复制代码

 

posted @   整合侠  阅读(1179)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示