os模块

一、简介

Python的标准库中的os模块包含普遍的操作系统功能。如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的。即它允许一个程序在编写后不需要任何改动,也不会发生任何问题,就可以在Linux和Windows下运行。

二、具体模块

2.1 os.getcwd():获取当前工作目录

# windows
>>> os.getcwd()
'G:\\python'         # \\ 转义路径分隔符 \

#Linux
>>> os.getcwd()
'/root/monitor'

2.2 os.chdir("dirname"): 改变当前工作目录

# windows
>>> os.chdir(r"G:\python\untitled")  # r 转义
>>> os.getcwd()
'G:\\python\\untitled'

#Linux
>>> os.chdir('/usr/local')
>>> os.getcwd()
'/usr/local'

2.3 os.curdir:  返回当前目录,'.'

2.4 os.pardir:  返回当前目录的父目录 , '..'

>>> import os
>>> os.curdir
'.'
>>> os.pardir
'..'

 

2.5 os.makedirs('dirname1/dirname2'):可生成多层递归目录

os.makedirs(r'G:\a\b\c')

  

2.6 os.mkdir('dirname') : 只能一层一层建目录

2.7 os.removedirs('dirname1/dirname2'): 若目录为空则删除,并返回到上一层,若也为空,同样删除,依次类推

 os.removedirs(r'G:\a\b\c')

 

2.8 os.rmdir('dirname') : 删除单级空目录,若目录不为空,无法删除

2.9 os.listdir('dirname'): 列出指定目录下的文件和目录,包括隐藏文件,以列表形式

>>> os.listdir(r'G:\python')
['install', 'program', 'pychart', 'scripts', 'untitled']
# 遍历一个目录下所有文件名

>>> os.listdir(r"C:\Windows\System32\drivers\etc")
['hosts', 'hosts.ics', 'lmhosts.sam', 'networks', 'protocol', 'services']
>>> for i in os.listdir(r"C:\Windows\System32\drivers\etc"):
...     print(i)
...
hosts
hosts.ics
lmhosts.sam
networks
protocol
services

  

 

2.10 os.remove():删除一个文件

2.11 os.rename('oldname','newname') : 重命名文件/目录

2.12 os.stat('path/filename') : 获取文件信息

2.13 os.sep : 输出操作系统下的路径分割符,win下位'\' ,linux 下位'/'

2.14 os.linesep :  操作系统的行终止符,win下位'/r/n',linux下位'\n'

2.15 os.pathsep :  输出用于分割文件路径的字符串

2.16 os.environ : 环境变量,以字典形式

2.17 os.system :  运行shell

2.18 os.path

# os.path.abspath(path)  当前文件的绝对路径
>>> os.path.abspath('111')
'G:\\python\\scripts\\111'

# os.path.split(path) :  将path分成目录和文件名二元组
>>> os.path.split(r'G:\python\scripts\111')
('G:\\python\\scripts', '111')

# os.path.dirname(path)  返回path的目录,其实就是os.path.split第一个元素
>>> os.path.dirname(r'G:\python\scripts\111')
'G:\\python\\scripts'

#os.path.basename(path)  返回path最后的文件名。如何path以/或\结尾,那么就会返回空值。即os.path.split(path)的第二个元素

>>> os.path.basename(r'G:\python\scripts\111')
'111'

#os.path.exists(path)  如果path存在,返回True;如果path不存在,返回False

# os.path.isabs(path)  如果path是绝对路径,返回True

#os.path.isfile(path)  如果path是一个存在的文件,返回True。否则返回False

#os.path.isdir(path)  如果path是一个存在的目录,则返回True。否则返回False

#os.path.join(path1[, path2[, ...]])  将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
  

  >>> os.getcwd()
  'C:\\Users\\jiangfei'
  >>> file_path=os.path.join(r"C:\User\jiangfei",'db')
  >>> print(file_path)
  C:\User\jiangfei\db

  

#os.path.getatime(path)  返回path所指向的文件或者目录的最后存取时间

#os.path.getmtime(path)  返回path所指向的文件或者目录的最后修改时间

  

posted @ 2017-06-15 18:58  Bigberg  阅读(477)  评论(0编辑  收藏  举报