python---OS模块
#和系统相关的模块
import os
ret=os.listdir(r"E:\Thz\day-1")#传一个路径,把路径列出来
print(ret)
os.path.getsize("大小")#获取文件大小
os.path.join("e:","logs","a.txt") #自动拼路径
import os
#os.listdir() #获取某个目录下的内容,如果不传路径,那么就获取当前目录下的
#os.remove() #删除文件,传入的是一个文件路径
#os.rename() #重命名,传入一个旧的文件名和一个新的文件名
# os.mkdir("logs") #创建文件夹
# os.makedirs("logs/2021-10-10") #创建多层的文件夹,父目录不存在的时候会帮你创建
# os.rmdir("xiaobai") #删除空文件夹
#os.removedirs("logs/2021-10-10") #删除空文件夹,会连带着父目录一起删除
# print(os.name) #获取当前操作系统的名称
# print(os.cpu_count()) #获取当前系统cpu核心数
# os.chdir("/Users/hansen/PycharmProjects/homework/day2") #进入到某个目录
# print(os.listdir())
# print(os.getcwd()) #获取当前所在的目录
# ret = os.system("ifconfig1")
#执行操作系统命令,只能执行命令,如果命令有结果,是拿不到的,它返回的是命令执行的状态,返回是0的话
#代表命令执行成功,不是0代表命令执行失败
# ret = os.popen("ifconfig").read()
#执行操作系统命令,调用read方法拿到结果
print(os.path.join("logs","2021","a.py"))#拼路径的
print(os.path.sep) #当前系统的的路径分隔符
print(os.path.isdir("ssq.txt")) #判断是否为文件夹
print(os.path.isfile("ssq.txt")) #判断是否为文件
print(os.path.exists("sdgsdg.txt")) #判断路径是否存在
os.path.abspath("111.txt") #取绝对路径 把相对路径转成绝对路径
print(os.path.dirname("e:\\软件\\爱奇艺.exe") )#取父目录
os.path.getsize()#获取文件的大小
os.path.getatime()#最后一次访问时间,比如看过它
os.path.getctime()#文件变化时间,大小改变/权限改变/归属人改变
os.path.getmtime()#最后一次修改时间,文件内容被修改
os.path.split("/user/abc/a.txt")#分隔路径的,他会把文件名和你的路径分隔开,返回两个参数,第一个是路径,第二个是文件名
参考:
os模块
1.rename,remove,rmdir,mkdir,makedirs
(1)os.rename()#重命名
os.rename("m1.py","M1.py") # 重命名 m1.py重命名为M1.py
(2)os.remove()# 删除文件,不能删除文件夹
os.remove("m2.py") # 删除文件,不能删除文件夹
(3)os.rmdir():删除空文件
os.rmdir('cars/bmw')
(4)创建文件
os.mkdir():父级目录不存在时不能创建
os.mkdir('test')
os.makedirs():父级目录不存在时会创建父级目录
os.makedirs("cars/bmw")
2.listdir,sep,system,popen,environ,name,getcwd,chdir
(1)os.listdir():获取某个目录下内容
print(os.listdir()) # 不传参数默认获取当前目录下文件
print(os.listdir(r"D:\李兴培\besttest测试")) # 获取指定目录下的内容:绝对路径
print(os.listdir(r"../day4")) # 一个点代表当前目录 两个点代表上一级目录
(2)os.sep():获取当前系统分隔符
print(os.sep) #\
(3)os.system():执行操作系统命令
command="ipconfig"
# 会乱吗
res=os.system(command) # 只能执行命令,返回命名是否执行成功
print(res) #0:成功 其他:失败
(4)os.popen()# 执行操作系统命令 返回结果,不会乱码
# 执行操作系统命令,可以获取到结果 所以打印不会乱码
res=os.popen(command).read()
print(res)
(5)os.environ:获取环境变量
print(os.environ) # 获取系统环境变量
(6)os.name:获取当前操作系统名称
print(os.name) # 当前从操作系统名称 nt
(7)os.getcwd():获取当前绝对路径
print(os.getcwd() )# 获取当前决对路径:D:\李兴培\besttest测试\测开代码\day5
(8)os.chdir():进入到某个目录
os.chdir('../day4') # 进入到day4目录
3.os.walk():获取某个目录下所有内容:当前目录,当前目录下的文件夹,当前目录下的文件:
4.os.path相关
(1)isfile,isdir,exists,
os.path.isfile():判断是否为文件
print(os.path.isfile('tools'))
os.path.isdir():判断是否为文件夹
print(os.path.isdir('m2.py'))
os.path.exists():判断是否存在
print(os.path.exists('a.txt'))
(2)getsize,abspath,dirname
os.path.getsize():获取文件大小,返回字节大小
print(os.path.getsize('m2.py'))
1024b=1kb,1024b=1mb,1024mb=1g 1024g=1t
os.path.abspath():获取某个文件的绝对路径
print(os.path.abspath('m2.py')) 结果:D:\李兴培\besttest测试\测开代码\day5\m2.py
# __file__ 当前文件
# print(os.path.abspath(__file__)) # 获取当前文件的决定路径
结果:D:\李兴培\besttest测试\测开代码\day5\04常用模块.py
os.path.dirname():获取父级目录
p=r"D:\李兴培\besttest测试\测开代码\day5"
print(os.path.dirname(p))
结果:D:\李兴培\besttest测试\测开代码
(3)getctime,getatime,getmtime:返回都是时间戳
os.path.getctime():获取文件创建时间
print(os.path.getctime('m2.py')) # 获取文件创建时间
结果:1621059414.377794
os.path.getatime():获取文件最后一次访问时间
print(os.path.getatime('m2.py')) #获取文件最后一次访问时间
结果:1621296817.1284304
os.path.getmtime():获取文件最后一次编辑时间
print(os.path.getmtime('m2.py'))
结果:1621296817.1284304
(4)join,split,walk
os.path.join():路径拼接
print(os.path.join('e:','moives','sdyjq.mp4')) #e:moives\sdyjq.mp4
os.path.split():路径分割
p="e:/moives/sdyjq.mp4"
print(os.path.split(p))# ('e:/moives', 'sdyjq.mp4')
5.文件练习:模糊查找文件
import os
def search_file(path,keyword):
for cur_path,dirs,files in os.walk(path):
for file_name in files:
if file_name.endswith(keyword):
abs_path=os.path.join(cur_path,file_name)
print("查找到%s是,绝对路径是%s" %(file_name,abs_path))
search_file('/','.mp4')

浙公网安备 33010602011771号