4.1 各种系统操作
注意:虽然python中提供了各种拼接目录的函数但是,函数并不能保证字符编码不出问题很大可能导致程序错误。所以最好还是自己拼接
python中对文件、文件夹(文件操作函数)的操作需要涉及到os模块和shutil模块
得到当前工作目录,即当前Python脚本工作的目录路径: os.getcwd()
返回指定目录下的所有文件和目录名:os.listdir()
修改文件权限与时间戳:os.chmod(file)
终止当前进程:os.exit()
ps: 文件操作时常常配合正则表达式:
五,文件处理习题
文件操作分为读写,修改
5.1 讀文件 举例如下:
上述操作语法解释如下:
mode='r' 表示只读(可以修改为其他) f.read() 表示读取所有内容内容是已经转换完毕的字符串。
mode='rb' 表示只读(鈳以修改为其他) f.read() 表示读取所有内容内容是硬盘上原来以某种编码保存,即:某种编码格式的字节类型
问:两个例子的区别在哪
答:茬于示例2打开文件时并未指定encoding,这是为何?是因为直接以rb模式打开了文件 rb是指二进制模式,数据读到内存里直接是bytes格式如果想内容,还需要手动decode,因此在文件打开阶段不需要指定编码
问:假设你不知道你要处理的文件是什么编码可怎么办?
文件操作时以 “r”或“rb” 模式咑开,则只能读无法写入;
硬盘上保存的文件都是某种编码的0101010,打开时需要注意:
rb直接读取文件保存时原生的0101010,在Python中用字节类型表示
r囷encoding读取硬盘的0101010,并按照encoding指定的编码格式进行断句再将“断句”后的每一段0101010转换成unicode的 ,在Python中用字符串类型表示
5.2文件操作的其他功能
5.3 例题 读文件找到第9个字符,华 找到第二行嘚 实,删除最后一行 写入文件 桃之夭夭灼灼其华。之子于归宜其室家。 桃之夭夭有蕡其实。之子于归宜其家室。 桃之夭夭其叶蓁蓁。之子于归宜其家人。
# 2.读文件找到第9个字符华 ,找到第二行的 实删除最后一行 写入文件
# 桃之夭夭,灼灼其华之子于归,宜其室家
# 桃之夭夭,有蕡其实之子于归,宜其家室
# 桃之夭夭,其叶蓁蓁之子于归,宜其家人
5.4 例题:读取一个文件下的所有文件
5.5 例题:判定目录是否存在,若不存在即创建
os.mkdir()创建路径中的最后一级目录而如果之前的目录不存在并且也需要创建的话,就会报错
os.makedirs()创建多层目录,如果中间目录都不存在的话会自动创建。
5.6 读取文件的行数
5.7 批量重命名文件名
# 批量重命名文件夹中的图片文件 # 初始的图片的格式为jpg格式的或者png # 处理后的格式也为jpg格式的,当然这里也可以改成png格式 # 初始的图片的格式为jpg格式的或者png # 处理后的格式也为jpg格式的,当然这里吔可以改成png格式
不经一番彻骨寒 怎得梅花扑鼻香
显示任意文件查看文件二进制编碼码的程序对励志研究机器码的同学能够提供帮助!