python中的文件,通常是用read()方法来读取。
如果程序要读取行,通常只能用文本方式来读取,道理很简单,只有文本文件才有行的概念,二进制文件没有所谓行的概念。
文件对象提供了如下两个方法来读取行:
readline([n]):读取一行内容。如果指定了参数 n,则只读取此行内的 n 个字符。
readlines():读取文件内所有行。
下面程序示范了使用 readline() 方法来读取文件内容:
import codecs # 指定使用utf-8字符集读取文件内容 f = codecs.open("readline_test.py", 'r', 'utf-8', buffering=True) while True: # 每次读取一行 line = f.readline() # 如果没有读到数据,跳出循环 if not line: break # 输出line print(line, end='') f.close()
上面程序使用 UTF-8 字符集打开 readline_test.py 文件,这是由于该 Python 源文件是采用 UTF-8 字符集保存的,因此,如果直接用普通的 open() 函数打开文件,则会引发 UnicodeDecodeError 异常。(更多学习内容,请点击python学习网)
接下来程序使用 readline() 方法逐行进行读取,当读取到结尾时,该方法将会返回空,程序就会退出循环。
程序也可以使用 readlines() 方法一次读取文件内所有行。例如如下程序:
import codecs # 指定使用utf-8字符集读取文件内容 f = codecs.open("readlines_test.py", 'r', 'utf-8', buffering=True) # 使用readlines()读取所有行,返回所有行组成的列表 for 1 in f.readlines(): print(1, end='') f.close()
常见问题FAQ
- 免费下载或者VIP会员专享资源能否直接商用?
- 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
- 提示下载完但解压或打开不了?
- 找不到素材资源介绍文章里的示例图片?
- 模板不会安装或需要功能定制以及二次开发?
发表评论
还没有评论,快来抢沙发吧!