python大作战之文件读写进阶篇

前言:之前跟大家说过,会对文件读写做一个进阶篇,那么今天就和大家一起学习下。

先给大家介绍几个方法:

1:readline()------读取多行文件内容

2:readlines()------读取单行文件内容

3:strip()------去掉文件操作中的空格和换行

4:tell()------打印或者输出当前文件光标的位置,按照字符来计算

5:seek()------移动光标到指定字符位置

6:flush()------时时刷新

7:stdout/stdin------标准输出和标准输入

8:truncate()------截断

9:closed()------判断文件是否关闭,返回结果为false和true

下面,通过几个例子来加深对它们的了解:

A:>>> f=open('fjh.txt','r',encoding=('gbk'))

>>> for line in range(3):

f.readline()
'我想在跑车里\n'
'想要一辆法拉利\n'
'想要钱 Money Money\n'

从例子中可以看出,readline只是一行一行输出,那与之相对的readlines就是多行输出

B:>>> f=open('fjh.txt','r',encoding=('gbk'))
>>> f.readline()
'我想在跑车里\n'
>>> f.tell()
14
>>> f.seek(0)
0
>>> f.readline()
'我想在跑车里\n'

从例子中可以看出,tell是把当前光标的位置打印出来,14,因为一个中文占两个字符,同时,seek就是把光标移动到开头

tell和seek一般同时出入

C:import sys,time
for i in range(20):
    sys.stdout.write('#')
    sys.stdout.flush()
    time.sleep(0.1)

大家可以实际操作下,在idle中需要新建文件,在里面写好之后在点击run去运行

从例子中看出stdout是以屏幕为标准输出,flush会时时刷新缓存,如果没有flush,那么结果将会直接全部一次性打印出来

因为它会等缓存区满了统一打印出来

D:>>> f=open('fjh.txt','r',encoding=('gbk'))
>>> f.close()
>>> f=open('fjh.txt','w',encoding=('gbk'))
>>> f.truncate()
0
>>> f.close()

今天就先跟大家讨论到这里,下次我在补充一些r+,w+,a+,rb,wb等的操作

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值