python打开文件的语法_python语法_文件操作

牢记“”“能调用方法的一定是对象”“”

文件的操作流程,

1 建立文件(打开文件)open('filename','模式').read() [这一步其实就是创建对象]

2 通过句柄进行操作

3 关闭open('filename','模式').close

模式可以有(只读('r'),只写('w'-覆盖原有文件内容),追加模式('a'在原有基础上进行内容的追加)

('r+')读写模式,可以调用f.write,写内容追加到最后,注意:当r+模式时,调用read和write的句柄不同,新增内容都只能写到最后。

('w+')可以调用f.write,但是写完后句柄已经移到了写的内容最后,这时需要调用read方法时需要调正句柄,需要使用seek方法

('a+')

目前来说没有方法对一个文件进行某一段的修改,一般都是新建一个文件来覆盖原有文件

通俗用法  f = open('filename','模式')

建立f.open ,关闭f.close

f.read(5) 取5个字符

f.write('hello word') 会清空原来的内容,在第一个位置开始写hello word(如果文件原来存在,会清空文件,文件不存在则新建文件)

write 方法时,存在指针,写完后会根据字符数将指针移到相应位置,再写时从该位置开始写.write时不能在同一时刻句柄被拿到。

python会自动close文件。但是不保险,必须执行f.close

#########

文件操作一系列的方法:

f.readline() 取第一行,句柄已经移到该行末尾(read是一样的)

f.readlinse() 取每一行的内容,返回一个列表,元素为每一行内容作为字符串

for  i in f.readlines():

print(i.strip())  可以对文件内容按照字符串遍历,但是这种方式不常用,以为取得内容全部放在内存里,文件过大的时,内存消耗过大。

for i in f:

print(i.strip) 通常可以使用这个方式进行文件的便利,取得文件内容做成了迭代(用一行取一行),通过算法计算出来的,没有放入内存。

f.tell() 读取当前句柄位置(英文占用1个字符,中文占用3个字符,python2.7时中英文无区别

f.seek(0)  调整句柄位置,调到相应句柄位置开始操作(断点续传,从断点位置开始续传操作)

f.flush 将f.write写入的内容实时的同步更新到磁盘上(用来进度条,安装一点显示一点。)

f.truncate()  截断保留参数之前的一节内容, f.truncate(5)保留前5个字符。 模式为'w','r','a'

f.fileno()获取文件号(返回整形数字)

f.isatty() 判断是否为终端设备。

f.readable

###########

with语句

with open('log','r') as f:

f.readline

f.read()

退出了with代码块,自动f.close了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值