import os
os.system('notepad.exe') #调用记事本
os.system('regedit') #调用注册表
os.system('ping.www.baidu.com') #调用网页 乱码问题使用gbk
os.system('cmd') #调用命令指示符
#直接调用可执行文件
os.startfile(r'D:\soft_install\WeChat\WeChat.exe') #打开微信
import os
print(os.name) #windows-->nt linux和unix-->posix
print(os.sep) #windows-->\ linux和unix-->/
print(repr(os.linesep))#windows-->\r\n linux-->\n\ repr()是将对象转化为供解释器读取的形式。
print(os.stat('mypy02.py')) #获取文件所有相关信息
import os
print(os.getcwd())#获得当前工作目录(current work dir)
print(os.mkdir()) #当前目录的创建
print(os.chdir('d:')) #改变当前目录为d:
import os
os.mkdir('相声') #创建当前目录
os.redir('相声') #删除指定目录,相对路径是相当于当前的目录而言
os.makedirs('德云社/郭德纲/岳云鹏/刘筱亭') #创建多级目录
os.removedirs('德云社/郭德纲/岳云鹏/刘筱亭') #删除多级目录,必须保证目录为空目录
os.makedirs('../刘老根/赵本山/二丫') #../指的是上一级目录
os.rename('德云社','德云男团') #重新命名文件或者目录名称
print(os.listdir('德云男团')) #查看目录下的文件列表
import os
import os.path #from os import path 下面的就可以省略os.
print(os.path.isabs('d:/b.txt')) #判断是否为绝对路径
print(os.path.isdir('d:/b.txt')) #判断是否为目录
print(os.path.isfile('d:/b.txt')) #判断是否为文件
print(os.path.exists('d:/b.txt')) #判断是否存在
import os
import os.path
print(os.path.getsize('b.txt')) #获得文件大小
print(os.path.abspath('b.txt')) #获得文件的绝对路径
print(os.path.dirname('b.txt')) #获得文件名所属的目录名
print(os.path.getctime('b.txt')) #获得文件创建时间create
print(os.path.getatime('b.txt')) #获得文件访问时间access
print(os.path.getmtime('b.txt')) #获得文件修改时间modify
import os
import os.path
path=os.path.abspath('b.txt') #获得文件的绝对路径
print(os.path.split(path)) #按照目录和文件切割路径
print(os.path.splitext(path)) #按点切割路径
print(os.path.join('aa','bb','cc'))#路径连接
使用os.path列出指定目录下的py文件,并输出文件名
import os
import os.path
path=os.getcwd() #获得当前工作目录
file_list=os.list(path) #获得所有文件
for filename in file_list:
if filename.endswith('py'): #文件名.endswith(a)以a结尾的文件
print(filename)
如果使用生成式:
import os
import os.path
path=os.getcwd()
file_list2=[filename for filename in os.list(path) if filename.endswith('py')]
for i in file_list2:
print(i)
用途:可以使用os.walk()来递归遍历所有子目录和子文件
import os
path=os.getcwd()
all_files=[]
file_list=os.walk(path)
for dirpath,dirsname,filesname in file_list:
#dirpath——当前正在遍历的文件夹所在地址
#dirsname——文件夹下所有的目录(不包括子目录)名
#filesname——文件夹下所有文件(不包括子文件)名
for dir in dirnames:
all_files.append(os.path.join(dirpath,dir))
pass
for file in filenames:
all_files.append(os.path.join(dirpath,file))
pass
#打印所有子目录和子文件
for file in all_files:
print(file)