Python基础自学(第四章-文件读写、内置函数)

第一部分:读文件

第一种读取文件方式(使用open()函数)(推荐使用)

  • 例子
    首先创建一个文件(现在暂时没有学会用命令直接创建,那么手动创建先)
    Python基础自学(第四章-文件读写、内置函数)
    用open()函数打开
    Python基础自学(第四章-文件读写、内置函数)
    文件要记得关闭,想要再次读取得重新打开
    Python基础自学(第四章-文件读写、内置函数)
    第二种读取文件的方式(用file()函数,和open()基本没有区别)
    Python基础自学(第四章-文件读写、内置函数)
    使用readlines()对文件内容按行读取(返回一个列表,每个元素代表文件中的一行)
    Python基础自学(第四章-文件读写、内置函数)
    使用for循环迭代输出文件对象,直到不能读取为止
    Python基础自学(第四章-文件读写、内置函数)
    使用readline只读取文件中的一行(此时文件内容还没给读完,如果此时调用read()函数会读取出除了第一行的其他所有内容)
    Python基础自学(第四章-文件读写、内置函数)

第二部分:写文件

写文件我们同样用open(),不过要把r改成w,即代表从只读模式转变为只写模式

  • 格式(默认里面的参数是r)
    open(name,mode=‘w’)(如果文件不存在,那么会创建一个空的文件,然后写入什么就是什么了)

  • 例子

Python基础自学(第四章-文件读写、内置函数)
如果不想让以前的内容消失,那么可以用open()的另一个模式,追加模式(参数为a)

  • 例子
    Python基础自学(第四章-文件读写、内置函数)
    还有另一种是读写模式(用参数w+,同样会覆盖以前写入的内容,但是可以查看写入了什么)
  • 例子
    Python基础自学(第四章-文件读写、内置函数)
    Python基础自学(第四章-文件读写、内置函数)
    关于中文文件的写
    open()函数是按照ASCII码字符串的形式来读写中文文件的,如果我们写入的Unicode字符串的话会抛出异常
  • 例子
    Python基础自学(第四章-文件读写、内置函数)
    为了解决这种问题,Python提供了解决办了,导入codecs模块并指定文件的编码格式即可
  • 例子
    Python基础自学(第四章-文件读写、内置函数)
    关于中文文件的读
    Python基础自学(第四章-文件读写、内置函数)
    所以在处理中文文件时我们一般都用codecs.open()函数。

第三部分:内置函数

Python的内置函数代表可以直接使用,常用的内置函数如下

  • 绝对值的计算(abs()函数,里面的参数可以是整数、长整数、浮点数、复数(返回模的长度))
    Python基础自学(第四章-文件读写、内置函数)
  • 进制之间的转换函数(bin()、oct()、hex(),分别是二、八、十六)
    Python基础自学(第四章-文件读写、内置函数)
  • ASCII码值的互相转换(chr()、ord(),前者是将码数转为字符,后者相反)
    Python基础自学(第四章-文件读写、内置函数)
  • 商和余数的计算(divmod()函数,返回一个元组,如果是整数那么返回(a/b,a%b),如果是浮点数,那么返回(向下取整的数,a%b))
    Python基础自学(第四章-文件读写、内置函数)
  • 幂的计算(pow())
    Python基础自学(第四章-文件读写、内置函数)
    Python基础自学(第四章-文件读写、内置函数)
  • 近似值的计算(round(),可以指定近似到小数后几位,不过要考虑浮点数精度问题)
    Python基础自学(第四章-文件读写、内置函数)
  • 序列真假的判断(all()、any(),前一个要序列里面的元素都为真才能返回true,后一个只要有一个为真就能返回true)
    Python基础自学(第四章-文件读写、内置函数)
  • 连续序列的生成(range()、xrange(),前一个产生一个列表,后一个产生一个对象)
    Python基础自学(第四章-文件读写、内置函数)
    当我们用for循环输出列表的元素时,range()函数要生成一个临时的列表,二xrange()不用,这样在一定程度上就节省了空间和时间
    Python基础自学(第四章-文件读写、内置函数)
  • 序列的迭代(enumerate()、zip(),前一个可以在迭代序列时输出序号和值,同时可以指定序号开始的值,后者则是将多个序列放在一起迭代)
    Python基础自学(第四章-文件读写、内置函数)
    zip()里面的参数用,号隔开,可以多个
    Python基础自学(第四章-文件读写、内置函数)
  • 序列的最值(max()、min())
    Python基础自学(第四章-文件读写、内置函数)
  • 序列的切片(slice()三个参数分别是start、stop、step)
    Python基础自学(第四章-文件读写、内置函数)
  • 最后还有很多的内置函数参考这里

这章主要了解内置函数的用法,记住常用即可,其他不知道可以百度了解,注意细节就行