任何语言都离不开对文件的操做,那么Python语言是如何来操做和管理文件的。python
编码方式的历史大体为ASCII ->gb2312->unicode->utf-8,期间具体详细信息能够百度linux
来个编码解码的小例子先,记住中文能够进行GBK和utf-8编码,在GBk一个中文字符对应两个字节,在utf-8一个中文字符对应三个字节,中文不能进行ASCII编码。git
若是你们在学习中遇到困难,想找一个python学习交流环境,能够加入咱们的python圈,裙号947618024,可领取python学习资料,会节约不少时间,减小不少遇到的难题。程序员
若是编码解码格式不一致可能会出现乱码,encode表示编码,decode表示解码。编程
下面是Python文件操做的具体的API。windows
方法 含义 open 打开 read 读取 write 写入 close 关闭 readline 单行读取 readlines 多行读取 seek 文件指针操做 tell 读取当前指针位置网络
Python的open()函数打开一个文件时,有若干个参数可用。然而,最经常使用的参数只有前两个。app
open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)dom
注意,第一个是强制性的,其他的是可选的。若是不添加mode参数,文件将在Python中以只读模式打开。函数
encoding:能够不写。不写参数,默认的编码本是操做系统默认的编码本。windows默认gbk,linux默认utf-8,mac默认utf-8。
mode含义r文本模式,读取rb二进制模式,读取w文本模式,写入wb二进制模式,写入a文本模式,追加ab二进制模式,追加+可读可写
代码中用到的文件文件操做的1.txt 文件内容以下:
readline(),使用该方法时,须要指定打开文件的模式为r或者r+;
readlines(),读取所有行.返回一个列表,列表中的每一个元素是原文件的每一行。若是文件很大,占内存,容易崩盘。
下面只介绍清除写 w和追加写 a
案例:将关注编程阿喵写入 test.txt 文件中
下面再将做者:编程阿喵写入test.txt 文件中
运行后会发现 w模式会清除原文件内容,因此当心使用。只要使用了w,就要一次性写完。
追加写 a
案例:将静夜思这首诗追加到 test.txt 文件中
事物或资源都是以文件的形式存在,好比消息、共享内存、链接等,句柄能够理解为指向这些文件的指针。
句柄(handle)是一个来自编译原理的术语,指的是一个句子中最早被规约的部分,因此带有一个「句」字。
句柄的做用就是定位,两个APi仍是tell和seek。
tell返回文件对象在文件中的当前位置,seek将文件对象移动到指定的位置,传入的参数是offset ,表示移动的偏移量。
下面经过示例对上述函数做进一步了解,以下所示:
咱们会进行这样的操做:打开文件,读写,关闭文件。程序员常常会忘记关闭文件。上下文管理器能够在不须要文件的时候,自动关闭文件,使用with open便可。
下面,批量读取某文件夹下的txt文件
下面将批量读取文件夹下的txt文件的内容,合并内容到一个新文件5.txt中,具体实现的代码以下。
其实在Window中只须要cd 至目标文件夹,即你须要将全部想要合并的txt文件添加至目标文件夹中,执行以下DOS命令 type *.txt > C:\目标路径\合并后的文件名.txt
题目:建立文件data.txt,文件共100000行,每行存放一个1~100之间的整数,题目来源:牛客
题目:生成100个MAC地址并写入文件中,MAC地址前6位(16进制)为01-AF-3B,题目来源:牛客
最后多说一句,想学习Python可联系小编,这里有我本身整理的整套python学习资料和路线,想要这些资料的均可以进q裙947618024领取。
本文章素材来源于网络,若有侵权请联系删除。