open(文件名) 打开文件, 关键字with在不再需要打开文件时将其关闭, 可以使用 as 将内容对象保存在变量中
当前运行的是file_reader.py,因此Python在file_reader.py所在的目录中查找pi_digits.txt
函数open()返回一个表示文件的对象,也可以用close() + open() 配合,但是容易出bug
使用.read()读取文件的全部内容,并将其作为字符串进行保存,
read()到达文件末尾时会返回一个空字符串,显示出来就是一个空行,使用rstrip()进行删除末尾空格处理
当你将类似pi_digits.txt这样的简单文件名传递给函数open()时,Python将在当前执行的文件 (即.py程序文件)所在的目录中查找文件
要让Python打开不与程序文件位于同一个目录中的文 件,需要提供文件路径,它让Python到系统的特定位置去查找。
逐行读取: for line in as.文件名:
print(line)
可以实现逐行读取,并且每一行之间隔着一个空白行,因为print默认输出换行,所以加上rstrip()就可以去掉空白行了
创建一个包含文件内容的list:通过.readlines()把文件的每一行保存在一个list中,输出即可
对于数据量过大的数据,可以使用切片[:n]输入任意长度的字符串
写入空文件:在open()中加上参数‘w’表示写入模式,'r'读取模式,‘a’附加模式,‘r+’能够读取和写入的模式
省略了模式实参,则默认为只读
如果你要写入的文件不存在,函数open()将自动创建它。然而,以写入('w')模式打开文 件时千万要小心,因为如果指定的文件已经存在,Python将在返回文件对象前清空该文件。
python只能将字符串写入文本,如果想把数值存储到文本中,必须先使用函数str()将其转换成字符串格式
当在文本中写入多行时,不会自动添加换行符,所以我们要手动添加
如果不想在写入时覆盖原来的内容,而是添加新的内容,使用附加模式'a',把内容添加到文件末尾
191 / 482
继续文件异常处理