day7_python学习笔记_chapter9_文件

1. open(), file(), 作用完全相同

2. 语法: file_object = open(file_name, access_mode='r', buffering='-1')

  access_mode: r, w,(将文件内容全部删除,重写), a, (在文件末尾追加), r+, w+, a+ 以读写模式打开文件; rb,wb, ab, 以二进制读方式打开。rU以读方式打    开,同时提供通用换行符支持

  buffering: 0代表无缓冲, 1,代表只缓冲一行数据, 大于1代表使用给定值作为缓冲区大小; 不提供或者给定负值代表使用系统默认缓冲机制。

3. 文件内建方法: 输入:read(), readline(), readlines(), xreadlines():不是一次性读取所有的行, 而是每次读取一块, 所以用在for循环时可以减少对内存的占  用

          输出:write(), writelines(), 无writeline()方法。

4. 换行符的处理: 当使用输入read()或者readlines()从文件中读取行时,python并不会删除行结束符,这个操作被留给了程序员。

    eg:f = open('myfile', 'r')

      data = [line.strip() for line in f.readlines()

      f.close()

5. 文件内移动seek() , 参数0代表从文件开头算起, 1代表从当前位置算起, 2代表从文件末尾算起

6. 文件迭代 for eachLIne in f:

7.  f.close(), 关闭,如果不关闭,则可能丢失输出缓冲区的数据,  f.fileno()方法返回打开文件的描述符。f.flush() 方法会直接把内部缓冲区的数据立刻写入文件。  truncate()方法将文件截取到当前指针位置或者到给定size(), 以字节为单位

8. print语句默认在输出内容最后加一个换行符, 而在语句后加一个逗号,就可以避免这个行为。

原文地址:https://www.cnblogs.com/yongpan666/p/3724923.html