python的内置模块之os模块方法详解以及使用
1、getcwd()
获取当前工作路径
import os print(os.getcwd()) C:\python35\python3.exe D:/pyproject/day21模块/os模块.py D:\pyproject\day21模块
2、chdir() 改变当前工作路径
import os print(os.getcwd()) os.chdir("test1") print(os.getcwd()) C:\python35\python3.exe D:/pyproject/day21模块/os模块.py D:\pyproject\day21模块 D:\pyproject\day21模块\test1
3、返回上级目录用..
import os print(os.getcwd()) os.chdir("..") print(os.getcwd()) C:\python35\python3.exe D:/pyproject/day21模块/os模块.py D:\pyproject\day21模块 D:\pyproject
4、makedirs(可以建递归的目录)
新建文件夹
import os os.makedirs("gouguoqi/gouguoqi1") os.chdir("gouguoqi/gouguoqi1") print(os.getcwd()) C:\python35\python3.exe D:/pyproject/day21模块/os模块.py D:\pyproject\day21模块\gouguoqi\gouguoqi
5、mkdir 新建目录,只能建一层
import os os.mkdir("gouguoqi") os.chdir("gouguoqi") print(os.getcwd()) C:\python35\python3.exe D:/pyproject/day21模块/os模块.py D:\pyproject\day21模块\gouguoqi
6、removedirs 删除指定目录,如果指定目录为空就删除,如果上级目录也空,也删除。如果上级目录不空就不删,就像下面这个,gouguoqi目录里面有文件,则保留这个文件夹
import os os.removedirs("gouguoqi/gouguoqi1")
7、rmdir 只能删除单级目录为空的文件夹
import os os.rmdir("gouguoqi") OSError: [WinError 145] 目录不是空的。: 'gouguoqi'
8、listdir 列出指定文件夹下面所有的文件夹和文件包括隐藏文件,以列表方式打印出来
import os print(os.listdir("D:\pyproject\day21模块")) C:\python35\python3.exe D:/pyproject/day21模块/os模块.py ['module-lesson.py', '文件修改功能.py', 'day21_lesson', 'time模块.py', 'random随机模块.py', 'basedir.py', 'os模块.py', 'test1', 'gouguoqi', '查询功能.py', '三级菜单.py', 'test.py', 'sed.py', 'haproxy.cfg']
9、remove 删除指定的一个文件
import os os.remove("gouguoqi/test.py")
10、rename 修改文件夹名字或者是文件名字都可以
import os os.rename("gouguoqi","gouguoqinew")
11、stat 查看一个文件的详细信息
import os print(os.stat("gouguoqinew/testnew")) C:\python35\python3.exe D:/pyproject/day21模块/os模块.py os.stat_result(st_mode=33206, st_ino=15085150720, st_dev=75373296, st_nlink=1, st_uid=0, st_gid=0, st_size=28, st_atime=1528473600, st_mtime=1528552906, st_ctime=1528552713) st_size=28 文件大小,单位是字节 st_atime=1528473600 用户上一次的访问时间 st_mtime=1528552906 用户上一次修改的时间(常用) st_ctime=1528552713 用户的创建文件的时间 这个时间是时间戳,想要转换成我们能看懂的那种格式,还得转换下,比如用户创建文件时间是1528552713 转换为字符串时间
import time time_local=time.localtime(1528552713)#时间戳转换为结构化时间 print(time.strftime("%Y-%m-%d %X",time_local))#将结构化时间转化为字符串时间 C:\python35\python3.exe D:/pyproject/day21模块/time模块.py 2018-06-09 21:58:33
12、sep 输出当前操作系统的路径分隔符
import os print(os.sep) C:\python35\python3.exe D:/pyproject/day21模块/os模块.py \
13、linesep 输出当前操作系统的行终止符,win是\r\n linux是\n
import os print(os.linesep)
14、pathsep 输出用于分割文件路径的字符串win下为; linux下为:
import os print(os.pathsep) C:\python35\python3.exe D:/pyproject/day21模块/os模块.py
15、system 运行shell命令,直接显示结果
[root@localhost python]# cat os.system.py #!/usr/bin/env python # _*_ coding:utf8 _*_ import os os.system("cd /home && ls") [root@localhost python]# python os.system.py python src
16、os.path.split 把路径分为2部分 1个是目录路径 1个是文件名
import os print(os.path.split(r"D:\pyproject\day21模块\gouguoqinew\test.py")) C:\python35\python3.exe D:/pyproject/day21模块/os模块.py ('D:\\pyproject\\day21模块\\gouguoqinew', 'test.py')
17、os.path.dirname 拿split分割的第一个元素
os.path.basename 拿split分割的第二个元素
import os print(os.path.split(r"D:\pyproject\day21模块\gouguoqinew\test.py")) print(os.path.dirname(r"D:\pyproject\day21模块\gouguoqinew\test.py")) print(os.path.basename(r"D:\pyproject\day21模块\gouguoqinew\test.py")) C:\python35\python3.exe D:/pyproject/day21模块/os模块.py ('D:\\pyproject\\day21模块\\gouguoqinew', 'test.py') D:\pyproject\day21模块\gouguoqinew test.py
18、os.path.exists 判断路径是否存在,存在为True,不存在为False
import os print(os.path.exists("D:\pyproject\day21模块\gouguoqinew")) C:\python35\python3.exe D:/pyproject/day21模块/os模块.py True
19、os.path.isabs 如果是绝对路径就返回True,否则为False
import os print(os.path.isabs("D:\pyproject\day21模块\gouguoqinew\gouguoqi1")) C:\python35\python3.exe D:/pyproject/day21模块/os模块.py True
20、os.path.isfile 判断一个文件是否存在,存在为True,否则为False
import os print(os.path.isfile(r"D:\pyproject\day21模块\gouguoqinew\test.py")) C:\python35\python3.exe D:/pyproject/day21模块/os模块.py True
21、os.path.isdir 判断一个目录是否存在,存在为True,否则为False
import os print(os.path.isdir(r"D:\pyproject\day21模块\gouguoqinew")) C:\python35\python3.exe D:/pyproject/day21模块/os模块.py True
22、os.path.join 路径拼接(重要常用)
import os a="D:\pyproject" b="day21模块\gouguoqinew" print(os.path.join(a,b)) C:\python35\python3.exe D:/pyproject/day21模块/os模块.py D:\pyproject\day21模块\gouguoqinew
23、os.path.getmtime 返回path的文件或者是路径的最后修改时间,结果是时间戳
import os print(os.path.getmtime(r"D:\pyproject\day21模块\gouguoqinew\test.py")) C:\python35\python3.exe D:/pyproject/day21模块/os模块.py 1528601360.0
然后将时间戳转化为结构化时间,在转化为字符串时间
import time time_local=time.localtime(1528601360.0)#时间戳转换为结构化时间 print(time.strftime("%Y-%m-%d %X",time_local))#将结构化时间转化为字符串时间 C:\python35\python3.exe D:/pyproject/day21模块/time模块.py 2018-06-10 11:29:20