python3文件的读写操作

本文详细介绍了Python3中对文件的读写操作,包括open函数的不同模式如r、w、x、a等,以及read、readlines、write、writelines等方法的使用。特别强调了使用'a+'模式读取文件时需要将指针切换到文件开头,并展示了读取和写入CSV文件的示例。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

python3文件的读写操作

open函数:对文件进行读写操作前,先打开文件,获取文件的句柄:
注意
1:读取文件操作时read()方法读取文件所有内容,读取出的结果为str类型
2:readlines()方法读取文件时,结果默认保存为列表当中

打开文件模式:


r:只读模式

w:只写模式【不可读,不存在,则创建;存在,则清空重写】

x:只写模式【不可读,不存在,则创建;存在,则报错】

a:追加模式【不可读,不存在,则创建;存在,则追加写入】

“+”表示可同时读写文件

r+:读写【不存在,不创建,从顶部开始写,会覆盖之前此位置的内容】

w+:读写【不存在,则创建;存在,则清空重写】

x+:读写【不存在,则创建;存在,则报错】

a+:读写【不存在,则创建;存在,则追加写入】

注:不建议用r+的方式去写入文件,会使之前的文件不完整。
    使用 a+ 模式读取文件内容时,需要将指针切换到文件左上角位置即seek(0

open函数

read()方法
#读取文件.open方法一个参数指读取的文件名,默认打开文件为:只读模式r,只能读取原文件内容,不能写内容

file = open("file2.txt")

#可以使用tell方法获取文件指针
print(file.tell())

#使seek可以移动文件指针
file.seek(2)


print(file.tell())

#指定字符读取2个字符
content = file.read(2)
print(content)


#在使用open方法读取txt的时候,操作完成后,要关闭文件
file.close()
write()方法
file = open('file3.txt','a+')

# 写入一行
file.seek(0)
file.write("tomtom")

#writelines写入多行内容,可以是一个字符串,在需要换行的地方加上\n
file.writelines("miss\nhello\npython")

print(file.readline())
#写入列表
name = ["Augus\n", 'tom']
file.writelines(name)
file.close()
withopen函数
withopen 可以同时打开多个文件,默认会关闭文件

with open('file2.txt')as a,open('file3.txt','a+') as b:
    s= a.readlines()
    for i in s:
        b.write(i)
 默认会关闭文件,不要使用close方法
读取csv文件
逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号)
import csv #导入模块
#打开文件
file = open('test.csv')
#读取打开的csv文件,读取了所有内容
info = csv.reader(file)

#输出后列表中的每一行是一个列表
for row in info:
    print(row)
    print("***********")
    
 对CSV文件进行write操作

import csv
#以a+模式打开文件
file = open("test.csv",'a+')

a = csv.writer(file)

#写入一行内容
list1 = ['hello', 'yes','augus']
a.writerows("tom")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

patmos

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值