Python-文件与文件夹(目录)操作
基本文件操作:
操作例码:
‘\’是一个python转义字符,若是文件名和’\’转义字符连接就出错了。
1、创建和打开文件:
open()函数:**file_name=open(file, mode, encoding=‘UTF-8’)**
#mode=’r’’a’’w’ 分别使文件可以只读、追加、只写的功能 //
已经在python打开了的文件,不能手动删除
使用with语句打开文件则不需要手动关闭文件:
with open(file, mode, encoding=‘UTF-8’) as file-name:
2、在文件中写入内容:
用**file-name.write(写入内容)**
这时候open的文件模式不能是’r’的只读模式
每次打开’w’的只写模式时,都会清空原文件的内容,再去write
打开’a’的追加模式时,则可以继续在源文件后面继续写
3读取文件:
**file.read()**
#中文或英文都只是占一个字符,打开模式为’r’
file.seek(size)
先将文件对象读取光标移动到size的位置,,size=目标光标开始数组位置 ,然后再接file.read()来读取文件内容。 想要截取文件中间的内容,文件对象的seek方法,将文件对象截取一部分。seek方法中英语字母和汉字各占一个字符,每个汉字占多少个编码需要根据encoding格式来确定→例如”UTF-8”一个汉字占3个编码
读取所有行 **readlines()
**的返回值是字符串列表
路径:
相对路径:需要当前工作路径+相对路径一起确定文件位置。
绝对路径:可以直接确定文件路径
OS模块:
1、os和os.path模块:
通过相对路径获取绝对路径:**os.path.abspath(path)
** #path为相对路径
拼接路径 os.path.join(path1[,path2[,….]])
若是path中没有一个绝对路径,则拼接结果为相对路径;#不保证路径一定真实存在
常见操作:
1,os.getcwd()
获得目录的当前系统程序工作路径
2,os. chdir(‘目标目录’)
切换到目标目录
3,os.listdir(‘字符串目录’)
列出字符串目录下的所有文件
4,os.mkdir(‘目录’)
创建目录 #若是已经存在则报’已经存在 ‘ 不能创建多级目录
删除空目录:`.rmdir(path)` #若是已经被删除了,则再次运行会报错
5,os.remove(‘1.txt’)
删除文件,文件不存在时会报错
6,os.linesep
打印操作系统的分隔符,linux系统的分隔符\n,windows系统的分隔符\r\n,mac系统的分隔符\r
7,os.path.join(os.getcwd(),‘aaa’, ‘bbb’, ‘ccc’)
拼接出来多级目录:E:\test\aaa\bbb\ccc
8,os.path.exists(‘目录’)
判断目录是否存在
9,os.path.split(‘文件或者目录’)
把最后的一个目录或者文件和前面的目录分开,返回一个tuple
10,os.path.splitext(‘文件’)
把文件的后缀名和前面分开,返回一个tuple
11,创建多级目录: .makedirs(name,mode=0o777)
或者
删除内部不为空的目录: #则内部内容与文件全部删除了
import shutil
#则需要导入另一个模块了
shutil.rmtree(r”path”)
遍历目录:# ?
as.walk(top[, topdown][, onerror][, followlinks])
返回值是元组生成器对象:(字符串,列表,列表)