os:跟操作系统相关的信息

os模块的增删改查

一、cd进入:

 windowd:
os.chdir("D:/软件/pychar/data/s13")
print('获取当前位置:',os.getcwd()) linux:
os.chdir("D:\\软件\\pychar\\data\\s13\\modle_os")
os.chdir(r"D:\软件\pychar\data\s13")
print('获取当前位置:',os.getcwd())

二、查询:

 #获取当前所在目录
print('获取当前位置:',os.getcwd()) 显示结果:
获取当前位置: D:\软件\pychar\data\s13 #列出指定目录下的所有文件和子目录。包括隐藏文件,并以列表的方式打印:
#当前目录下的所有文件和文件夹:
print('打印当前目录下的文件和文件夹:',os.listdir('.')) 显示结果:
打印当前目录下的文件和文件夹: ['practise1.py'] #父级目录下的所有文件和文件夹:
print(os.listdir(".."))
显示结果:
父级目录下的所有文件和文件夹: ['.idea', 'Alex_atm', 'ATM_credit_card', 'CMDB', 'lepus', 'practice', 's13', 'shopping'] #指定目录下的所有文件和文件夹:
print('指定目录下的所有文件和文件夹:',os.listdir(r'D:\\软件\\pychar\data'))
显示结果:
指定目录下的所有文件和文件夹: ['.idea', 'Alex_atm', 'ATM_credit_card', 'CMDB', 'lepus', 'practice', 's13', 'shopping'] #显示当前目录为点:('.')
print(os.curdir)
输出结果:
显示当前目录: . #获取当前目录的父级目录为点点:('..')
print(os.pardir)
输出结果:
获取当前的父集目录: ..

三、创建:

 #生产单级目录;相当于shell中的mkdir dirname:
os.mkdir(r"D:\a") #递归创建多层目录:
os.makedirs(r"D:\a\b\c")

四、删除:

 #删除单级空目录,若目录不为空则无法删除;报错:相当于shell中的rmdir dirname
os.rmdir(r"D:\a") #递归删除目录(模块有文件,则不删除)
#若目录为空,则删除,递归到上一级目录,若上一级目录也为空,则删除,以此类推。
os.removedirs(r"D:\a\b\c") #删除一个文件:
# os.remove(r'D:\a\b\c\aaa.txt')

五、修改:

 #重命名目录名和文件名:
os.rename(r"D:\a\b\c1",r'D:\a\b\cd')
os.rename(r"D:\a\b\cf1.txt",r"D:\a\b\cf.txt")

显示不同平台之间的相关信息

 #获取目录/文件的属性:
print(os.stat(r'D:\a\b\cd'))
#os.stat_result(st_mode=16895, st_ino=562949953428257, st_dev=747945, st_nlink=1, st_uid=0, st_gid=0, st_size=0, st_atime=1501594367, st_mtime=1501594367, st_ctime=1501593961)
#socket的时候的通知一下发多少个字节,到时候会用到这个。 #输出操作系统特定的分隔符(win下为:\\ linux下为:"/")
print(os.sep)
#'\\' #输出当前平台使用的终止符,即换行符:(win下为:"\r\n" linux下为:"\n")
print(os.linesep)
#'\r\n' #输出用于分割文件路径的字符串:
print(os.pathsep)
#';' #输出系统环境变量:
print(os.environ) #输出字符串只是当前使用的平台;(win--> 'nt' linux---> 'posix')
print(os.name) #用来执行当前目录下的系统命令;
print(os.system('dir'))
print(os.system('ipconfig /all'))

显示os.path模块方法

 必须要会的
#获取当前文件所在的绝对路径:
print(os.path.abspath(__file__))
显示结果:
D:\软件\pychar\data\s13\modle_os\test.py 必须要会的
#提取字符串中的目录:(目录无需存在)
print(os.path.dirname(r'F:\a\b\c\a.txt')) 提取当前字符串的上级目录:(每个dirname就是一个上一级目录标识)
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) #将目录和文件分割成元祖返回
print(os.path.split(r"D:\a\b\cf1.txt"))
显示结果:
('D:\\a\\b', 'cf1.txt') #提取字符串中的文件:(文件无需存在)
print(os.path.basename(r'F:\a\b\c\a.txt')) #提取字符串中的最后末尾元祖
print(os.path.basename(r'F:\a\b\c'))
显示结果:
F:\a\b\c
a.txt
c #判断文件是否存在:
print(os.path.exists(r'F:\a\b\cf.txt'))
print(os.path.exists(r'D:\a\b\cf.txt'))
显示结果:
False
True #判断是否为绝对路径:(从根开始“判断前面是否有特殊字符做分割”)
print(os.path.isabs(r'a'))
print(os.path.isabs(r'/a'))
显示结果:
False
True #判断文件和目录:
print(os.path.isfile(r'D:'))
print(os.path.isfile(r'D:\a\b\cf.txt'))
显示结果:
False
True print(os.path.isdir(r'D:'))
print(os.path.isdir(r'D:\a\b\c'))
显示结果:
True
False 必须要会的
#将多个路径组合后返回,第一个绝对路径之前的参数将被忽略:
print(os.path.join(r'D:',r'a',r'ce.txt'))
显示结果:
D:a\ce.txt #返回path所指向的文件或者目录的最后存取时间。
print(os.path.getatime(r'D:\a'))
显示结果:
1501593961.9510007 #返回path所指向的文件或者目录的最后修改时间。
print(os.path.getmtime(r'D:\a\b\cf.txt'))
显示结果:
1501594534.7840006

最新文章

  1. BFC布局
  2. 《Entity Framework 6 Recipes》中文翻译系列 (20) -----第四章 ASP.NET MVC中使用实体框架之在MVC中构建一个CRUD示例
  3. Android笔记——SQLiteOpenHelper类
  4. 通过JDBK操作数据库
  5. 安卓四大组件之activity和获取网络资源之断点续传
  6. mac+apache+php+phpmyadmin集成php开发环境配置
  7. Android中的各种单位
  8. oracle数据库exp/imp命令详解
  9. AngularJS之使用服务封装
  10. PHP函数和数组
  11. 实现upnp ssdp来查找局域网内的其他节点
  12. CAS单点登录原理简单介绍
  13. Win userAccountControl 基本属性
  14. java中的Object类和其clone()
  15. 关于矩阵A*b=A*c 中b是否等于c
  16. (原创)用c++11打造好用的variant(更新)
  17. 读书笔记 effective c++ Item 42 理解typename的两种涵义
  18. ORA-01153: an incompatible media recovery is active
  19. THUSC2018退役预定
  20. Java受检异常和不受检异常

热门文章

  1. JQuery操作表单相关使用总结
  2. javascript jquery数组操作小结
  3. 【BZOJ】1044: [HAOI2008]木棍分割(二分+dp)
  4. 【BZOJ】1697: [Usaco2007 Feb]Cow Sorting牛排序(置换群)
  5. Android_Zip解压缩工具
  6. YII2与Thinkphp整合阿里云OSS
  7. SpringCloud服务发现(Eureka)简介
  8. Centos下使用压缩包安装MySQL5.7
  9. An Edge-Guided Image Interpolation Algorithm via Directional Filtering and Data Fusion【翻译】
  10. IOS 7 自定义的UIAlertView不能在iOS7上正常显示