import os # 1.切换路径============= d = os.getcwd() #获取当前的工作路径 os.chdir('D:\')#目录的切换 print(os.getcwd()) # (切换过去怎么回来呢?再chdir一下就回来了) os.chdir(d) print(os.getcwd()) # 2.执行系统命令============= # system和popen都是执行系统命令的,但是popen比较好用,因为它有返回值 os.system('dir') #显示的是gbk的编码, # 解决system乱码的方法 ret = os.popen('dir') #popen是有返回值的,而且自己转码了 print(ret.read()) # 3.创建文件夹=和创建文件========== os.mkdir('temp') #生成一个文件夹,,只能生成一个 os.mkdir(r'temp2inner') #这样就报错了 os.makedirs(r'temp1inner',exist_ok=True) #创建多级目录 os.makedirs(r'temp1innerinner2',exist_ok=True) #创建多级目录 # 那么如果文件夹已经存在了,就报错了,那我如果不想 # 让报错(就是假如存在,就不创建也不报错),那么就加上exist_ok=True # 创建文件 f = open(r'temp1innerfile','w') f.close() # 4.======重命名文件夹===== os.rename(r'temp1innerinner2','temp1innerhaiyan') # 5.=====删除文件夹和删除文件========= # 先删文件, os.remove(r'temp1innerfile') # 再删文件夹 os.removedirs(r'temp1innerhaiyan') #删除一个文件夹的时候,如果上一级的文件夹是空的,就一并删除了。以此类推 os.rmdir((r'temp1inner') )#只删除一个文件夹 # 6.子目录======== print(os.listdir(os.getcwd())) #打印当前目录下的目录 print(os.walk(os.getcwd())) #<generator object walk at 0x00000000021C6728> ret = os.walk(os.getcwd()) #拿到的东西比较多,如果你关心子目录下的东西,就用walk print(list(ret)) # 7.====获取文件或者目录的信息的结构说明======== print(os.stat('temp')) # st_atime:上次访问的时间 # st_mtime:最后一次修改的时间 # st_ctime:最新的更新时间 print(os.sep) # 打印的是 print(os.getcwd()) file_path = '%s%s%s'%(os.getcwd(),os.sep,'filename') #拼接一个路径(方式一) print(file_path) print(os.path.join(os.getcwd(),'filename'))#拼接一个路径(方式二) # 8.====字符串指示当前使用平台 print(os.name) #如果是win,则打印的是nt 如果是,linux,打印poxis # 应用场景:当你输入命令的时候,要判断是win系统还是 linux系统。就可以用 # os.name去判断了 # 9.===获取系统环境变量===== print(os.environ) # 10.路径相关的======= print(os.path.abspath('namedtuple.py')) print(os.path.dirname(os.path.abspath('namedtuple.py'))) print(os.path.dirname(os.path.dirname(os.path.abspath('namedtuple.py')))) print(os.path.exists(os.path.abspath('namedtuple.py')))