【python学习笔记】pthon3.x中的文件读写操作

  在学习python文件读写的时候,因为教程是针对python2的,而使用的是python3。想要利用file类时,类库里找不到,重装了python2还是使不了。在别人园子认真拜读了《详解python2和python3区别》(已收藏)之后,才发现python3已经去掉file类。

  现在利用python进行文件读写的方法更加类似于C语言的文件读写操作。

  如今总结如下:

  一 打开文件—— f = open(‘poem.txt‘,‘x+‘):

    读过open的帮助文档,然后自己翻译了一下,现给大家分享一些摘抄注释:

    1 open(...)的作用:打开文件并返回一个数据流。打开出错则返回IOError。

    2 打开文件的方法:可通过文件名(如果不在当前目录下,则提供路径)来打开文本或比特流(即文件)或者包装一个整型文件描述符(??英文是integer file descriptor,存疑)。

    3 打开文件的模式:默认打开文件的方式是‘rt‘

    字母    含义
    --------- ---------------------------------------------------------------
    ‘r‘       只读模式打开 (默认模式)
    ‘w‘       只写模式打开,首先截断文件(??什么是截断文件?存疑。)
    ‘x‘       新建文件并打开(如果文件已经存在,则产生一个FileExistsError错误)
    ‘a‘       读文件,如果文件存在,在文件尾进行追加
    ‘b‘       二进制读写模式
    ‘t‘       文本读写模式(默认)
    ‘+‘       打开一个磁盘文件用于更新 (进行读写操作)
    ‘U‘       通用换行模式 (不赞成使用,newline的值可以是None, ‘‘, ‘\n‘, ‘\r‘, 和 ‘\r\n‘)
    ========= ===============================================================

    4 open(...)使用方法:

    file = open(file, mode=‘r‘, buffering=-1, encoding=None,errors=None, newline=None, closefd=True, opener=None)

    (后六个参数可选)

 

  二 关闭文件—— f.close( )

    

  使用open打开文件后一定要记得调用文件对象的close()方法。

  可以直接调用close()关闭文件。

  也可以用try/finally语句来确保最后能关闭文件。(参考资料:http://jingyan.baidu.com/article/aa6a2c14d54f7f0d4c19c487.html

  file_object = open(‘thefile.txt‘) 

  try: 

    all_the_text = file_object.read( ) 

  finally: 

    file_object.close( )

  注:不能把open语句放在try块里,因为当打开文件出现异常时,文件对象file_object无法执行close()方法。

  

    三 读文件—— file.read(size)

    1 file.read(n) 指定参数,读取从当前位置之后n个字符或字节
    2 file.read() 不指定参数,读取整个文件

    3 file.readline() 读取一行字符串,这个字符串是以一个行结束符‘\n‘为结束的,如果它返回了一个空字符串,说明已经到了文件的结尾,如果返回一个‘\n‘,则说明是一个空行。

    4 file.readlines() 读取文件中的每一行,每行字符组成一个字符串。如果要读取文件的所有行,则可以使用list(f)函数或者f.readlines()。

    

   四 写文件——file.write()

    file.write(string)会将string的内容写入到文件中,返回一个数值,是写入的字符的个数。如果要把其他对象写入到文件中,要先将其转换为字符串。

    五 文件读取指针的位置

    

    file.tell()会返回当前文件读写指针的位置,如果是用二进制打开的,则这个位置表示从文件头开始到当前位置的字节数,如果是在文本模式,则这个位置的含义就比较模糊了。

    为了改变文件的读写指针的位置,可以使用file.seek(offset,from_what)函数,这个函数会从某个位置加上offset值。from_what值有三个,0表示从文件头开始,1表示从当前位置开始,2表示从文件末尾开始。默认值是0.

    参考资料:http://www.cnblogs.com/fnng/archive/2013/05/22/3091982.html

    

时间: 2024-10-14 21:32:34

【python学习笔记】pthon3.x中的文件读写操作的相关文章

Python学习笔记(二十三)文件读写

摘抄自:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001431917715991ef1ebc19d15a4afdace1169a464eecc2000 读写文件是最常见的IO操作.Python内置了读写文件的函数,用法和C是兼容的. 读写文件前,我们先必须了解一下,在磁盘上读写文件的功能都是由操作系统提供的,现代操作系统不允许普通的程序直接操作磁盘,所以,读写文件就是请求

Guava学习笔记:guava中对字符串的操作

Guava学习笔记:guava中对字符串的操作 转载:http://outofmemory.cn/java/guava/base/Strings 在google guava中为字符串操作提供了很大的便利,有老牌的判断字符串是否为空字符串或者为null,用指定字符填充字符串,以及拆分合并字符串,字符串匹配的判断等等. 下面我们逐一了解这些操作: 1. 使用com.google.common.base.Strings类的isNullOrEmpty(input)方法判断字符串是否为空        

Java学习笔记——File类之文件管理和读写操作、下载图片

Java学习笔记——File类之文件管理和读写操作.下载图片 File类的总结: 1.文件和文件夹的创建 2.文件的读取 3.文件的写入 4.文件的复制(字符流.字节流.处理流) 5.以图片地址下载图片 文件和文件夹 相关函数 (boolean) mkdir() 创建此抽象路径名指定的目录  (boolean) mkdirs() 创建此抽象路径名指定的目录,包括所有必需但不存在的父目录. (boolean) delete() 删除此抽象路径名表示的文件或目录 (boolean) createNe

php学习基础-文件系统(二) 文件读写操作、文件资源处理

一.文件的打开与关闭 /* *读取文件中的内容 * file_get_contents(); //php5以上 * file() * readfile(); * * 不足:全部读取, 不能读取部分,也不能指定的区域 * * fopen() * fread() * fgetc() * fgets() * * * * * 写入文件 * file_put_contents("URL", "内容字符串"); //php5以上 * 如果文件不存在,则创建,并写入内容 * 如果

安卓系统中的文件读写操作

权限 <manifest ...> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> ... </manifest> WRITE_EXTERNAL_STORAGE 已经隐含了读取权限 得到当前应用下的路径文件 File file = new File(context.getFilesDir(), filename); 写文件 String file

python学习笔记-day03 (函数和文件操作)

函数(代码块,按功能划分(也可按其他方式划分)) 内置函数第三方函数自定义函数 内置函数:help()dir()type()reload()id() vars()  # 获取脚本中的变量,当前模块的所有变量    {'__name__': '__main__',  #被执行的脚本,__name__ 的值为__main__    '__builtins__': <module '__builtin__' (built-in)>,     '__file__': '/PYthon/test/tes

python学习笔记24(路径与文件 (os.path包, glob包))

os.path模块主要用于文件的属性获取,在编程中经常用到,以下是该模块的几种常用方法. >>> import os.path >>> path = '/home/ethon/doc/file.txt' >>> os.path.abspath(path) # 返回path规范化的绝对路径 'C:\\home\\ethon\\doc\\file.txt' >>> os.path.split(path) # 将path分割成目录和文件名二

python学习笔记(13)--向文件夹插入课文朗读

说明: 1. 2016年初刚学python写的一段代码,找到了一个walk函数,研究了半天.文件复制粘贴,研究了半天.正则匹配,研究了半天,期间被斜杠差点搞死.后来做完了跟CZ炫耀,他说python里的walk函数特别好用,c#里面要搞半天. 2. 其实现在用这几个函数还是要百度,不过不用研究半天了.放在这里留个纪念吧! 1 import os 2 import re 3 import shutil 4 path1 = r"D:\XiZhi\XZJYResFolder_new\Grade_7_T

python学习笔记3:集合,文件操作,函数

一.集合 1. >>> s=set([1,2,3,4,5,6,6,6,])>>> s{1, 2, 3, 4, 5, 6} 集合可以理解为有键没有值的字典,键之间去重,无序. 2.集合操作: >>> s1={1,2,3,4,5,6,7}>>> s2={6,7,8,9,10,11}>>> s1&s2{6, 7}//交集>>> s1|s2{1, 2, 3, 4, 5, 6, 7, 8, 9, 10