天天看点

Python自学个人知识点记录8---文件

1.使用open()函数来打开文件,第一个参数是文件路径,第二个参数功能如图: 注意:用w写入打开的话,之前的文件会不见,因为是直接覆盖的,建议使用a来打开;

Python自学个人知识点记录8---文件

例如:>>> f = open('D:\\Workspaces\\Python\\text.txt')

>>> f

<_io.TextIOWrapper name='D:\\Workspaces\\Python\\text.txt' mode='r' encoding='cp936'>

>>> f.read()

'今天也是学习python的一天,\n今天学习的是文件,\n文件首先需要被读取。'

2.文件对象方法:

  ①f.close():关闭文件,必有,否则数据则停留在缓冲区;

  ②f.read(size=-1):从文件读取size个字符,当未给定size或给定负值的时候,读取剩余的所有字符,然后作为字符串返回,举例>>> f.read()

'今天也是学习python的一天,\n今天学习的是文件,\n文件首先需要被读取。';

  ③f.readline():以写入模式打开(从当前指针处开始读取一行),如果文件存在,则在末尾追加写入,举例:>>> f.seek(0,0)

>>> f.readline()

'今天也是学习python的一天,\n';  

  ④f.write(str):将字符串str写入文件,返回写入的字符数目;

  ⑤ f.seek(offset,from):在文件中移动文件指针,从from(0代表文件起始位置,1代表当前位置,2代表文件末尾)偏移offset个字节(注意当from为0的时候,offset不可为负数),f.seek(0,0)定位到起始位置,举例:>>> f.seek(2,0)

2;

  ⑥f.tell():返回当前在文件中的位置(注意:一个中文占两个字节),举例:>>> f.tell()

28;

  ⑦f.writelines(seq):像文件中写入字符串序列seq(就是元素是字符串的序列),seq应该是一个返回字符串的可迭代对象;

  ⑧文件可使用迭代直接读取,举例>>> for eachline in f:

    print(eachline)

今天也是学习python的一天,

今天学习的是文件,

文件首先需要被读取。;