欢迎使用CSDN-markdown编辑器

鲁景山
2023-12-01

原文转载自:http://blog.csdn.net/pan_tian/article/details/7686516
OS模块的基础用法


os.sep 可以取代操作系统特定的路径分割符。

[python] view plain copy
print ?
  1. >>> os.sep  
  2. ’\\’  
>>> os.sep
'\\'

os.name字符串指示你正在使用的平台。比如对于Windows,它是’nt’,而对于Linux/Unix用户,它是’posix’。

[python] view plain copy
print ?
  1. >>> os.name  
  2. ’nt’  
>>> os.name
'nt'

os.getcwd()函数得到当前工作目录,即当前Python脚本工作的目录路径。

[python] view plain copy
print ?
  1. >>> print os.getcwd()  
  2. D:\Python27  
  3. >>>   
>>> print os.getcwd()
D:\Python27
>>> 

os.getenv()和os.putenv()函数分别用来读取和设置环境变量。

[python] view plain copy
print ?
  1. >>> print os.getenv(‘PATH’)  
  2. C:\Program Files\PuTTY;D:\oracle\product\10.1.0\Db_1\bin;….  
>>> print os.getenv('PATH')
C:\Program Files\PuTTY;D:\oracle\product\10.1.0\Db_1\bin;....

os.listdir()返回指定目录下的所有文件和目录名。

[python] view plain copy
print ?
  1. >>> import os  
  2. >>> print (os.listdir(“D:\\Notes\\Python”))  
  3. [’.project’‘.pydevproject’‘alljava.py’‘arcs.py’‘arcsjava.py’‘arcsout.py’‘bom_arcs.sh’‘bom_src’‘bom_src.tar’‘bom_src.tar.gz’‘fnd’‘fnd_arcs.sh’‘hello.py’‘inv_arcs.sh’‘javafolder.txt’‘Linux\xbb\xb7\xbe\xb3\xcf\xc2Python\xb5\xc4\xb0\xb2\xd7\xb0\xb9\xfd\xb3\xcc.doc’‘module.txt’‘mwa_arcs.sh’‘mwa_src’‘mwa_src.tar’‘mwa_src.tar.gz’‘os.py’‘ostest.py’‘pjm_arcs.sh’‘pjm_src’‘pjm_src.tar’‘pjm_src.tar.gz’‘po.sh’‘Python in Linux Cookbook(PTIAN).doc’‘python-3.1.1-docs-html.chm’‘test.py’‘test2.py’‘wip_arcs.sh’‘wms_arcs.sh’‘wms_src’‘wms_src.tar’‘wms_src.tar.gz’]  
  4. >>>   
>>> import os
>>> print (os.listdir("D:\\Notes\\Python"))
['.project', '.pydevproject', 'alljava.py', 'arcs.py', 'arcsjava.py', 'arcsout.py', 'bom_arcs.sh', 'bom_src', 'bom_src.tar', 'bom_src.tar.gz', 'fnd', 'fnd_arcs.sh', 'hello.py', 'inv_arcs.sh', 'javafolder.txt', 'Linux\xbb\xb7\xbe\xb3\xcf\xc2Python\xb5\xc4\xb0\xb2\xd7\xb0\xb9\xfd\xb3\xcc.doc', 'module.txt', 'mwa_arcs.sh', 'mwa_src', 'mwa_src.tar', 'mwa_src.tar.gz', 'os.py', 'ostest.py', 'pjm_arcs.sh', 'pjm_src', 'pjm_src.tar', 'pjm_src.tar.gz', 'po.sh', 'Python in Linux Cookbook(PTIAN).doc', 'python-3.1.1-docs-html.chm', 'test.py', 'test2.py', 'wip_arcs.sh', 'wms_arcs.sh', 'wms_src', 'wms_src.tar', 'wms_src.tar.gz']
>>> 

os.remove()函数用来删除一个文件。

[python] view plain copy
print ?
  1. >>> os.remove(“D:\\Notes\\Python\\test.txt”)  
>>> os.remove("D:\\Notes\\Python\\test.txt")

os.linesep字符串给出当前平台使用的行终止符。例如,Windows使用’\r\n’,Linux使用’\n’ 而Mac使用’\r’。

[python] view plain copy
print ?
  1. >>> print “a”+os.linesep+“b”  
  2. a  
  3.   
  4. b  
>>> print "a"+os.linesep+"b"
a

b

os.listdir(dirname):列出dirname下的目录和文件

[python] view plain copy
print ?
  1. >>> os.listdir(“D:\\Notes\\Python”)  
  2. [’.project’‘.pydevproject’‘alljava.py’‘arcs.py’‘arcsjava.py’‘arcsout.py’‘bom_arcs.sh’‘bom_src’‘bom_src.tar’‘bom_src.tar.gz’‘fnd’‘fnd_arcs.sh’‘hello.py’‘inv_arcs.sh’‘javafolder.txt’‘Linux\xbb\xb7\xbe\xb3\xcf\xc2Python\xb5\xc4\xb0\xb2\xd7\xb0\xb9\xfd\xb3\xcc.doc’‘module.txt’‘mwa_arcs.sh’‘mwa_src’‘mwa_src.tar’‘mwa_src.tar.gz’‘os.py’‘ostest.py’‘pjm_arcs.sh’‘pjm_src’‘pjm_src.tar’‘pjm_src.tar.gz’‘po.sh’‘Python in Linux Cookbook(PTIAN).doc’‘python-3.1.1-docs-html.chm’‘test.py’‘test.txt’‘test2.py’‘wip_arcs.sh’‘wms_arcs.sh’‘wms_src’‘wms_src.tar’‘wms_src.tar.gz’]  
  3. >>>   
>>> os.listdir("D:\\Notes\\Python")
['.project', '.pydevproject', 'alljava.py', 'arcs.py', 'arcsjava.py', 'arcsout.py', 'bom_arcs.sh', 'bom_src', 'bom_src.tar', 'bom_src.tar.gz', 'fnd', 'fnd_arcs.sh', 'hello.py', 'inv_arcs.sh', 'javafolder.txt', 'Linux\xbb\xb7\xbe\xb3\xcf\xc2Python\xb5\xc4\xb0\xb2\xd7\xb0\xb9\xfd\xb3\xcc.doc', 'module.txt', 'mwa_arcs.sh', 'mwa_src', 'mwa_src.tar', 'mwa_src.tar.gz', 'os.py', 'ostest.py', 'pjm_arcs.sh', 'pjm_src', 'pjm_src.tar', 'pjm_src.tar.gz', 'po.sh', 'Python in Linux Cookbook(PTIAN).doc', 'python-3.1.1-docs-html.chm', 'test.py', 'test.txt', 'test2.py', 'wip_arcs.sh', 'wms_arcs.sh', 'wms_src', 'wms_src.tar', 'wms_src.tar.gz']
>>> 

os.curdir:返回但前目录(’.’)

[python] view plain copy
print ?
  1. >>> os.curdir  
  2. ’.’  
>>> os.curdir
'.'

os.chdir(dirname):改变工作目录到dirname

[python] view plain copy
print ?
  1. >>> os.chdir(“D:”)  
>>> os.chdir("D:")

os和os.path模块

os.path.isfile()和os.path.isdir()函数分别检验给出的路径是一个文件还是目录。

[python] view plain copy
print ?
  1. >>> os.path.isfile(“D:\\Notes\\Python\\test.txt”)  
  2. True  
  3. >>> os.path.isfile(”D:\\Notes\\Python\\test1.txt”)  
  4. False  
  5. >>> os.path.isfile(”D:\\Notes\\Python”)  
  6. False  
  7. >>> os.path.isdir(”D:\\Notes\\Python”)  
  8. True  
>>> os.path.isfile("D:\\Notes\\Python\\test.txt")
True
>>> os.path.isfile("D:\\Notes\\Python\\test1.txt")
False
>>> os.path.isfile("D:\\Notes\\Python")
False
>>> os.path.isdir("D:\\Notes\\Python")
True

os.path.exists()函数用来检验给出的路径是否真地存在

[python] view plain copy
print ?
  1. >>> os.path.exists(“D:\\Notes\\Python”)  
  2. True  
  3. >>>   
>>> os.path.exists("D:\\Notes\\Python")
True
>>> 

os.path.getsize(name):获得文件大小,如果name是目录返回0L

[python] view plain copy
print ?
  1. >>> os.path.getsize(“D:\\Notes\\Python\\module.txt”)  
  2. 908L  
>>> os.path.getsize("D:\\Notes\\Python\\module.txt")
908L

os.path.abspath(name):获得绝对路径

[python] view plain copy
print ?
  1. >>> os.path.abspath(“D:\\Notes\\Python\\module.txt”)  
  2. ’D:\\Notes\\Python\\module.txt’  
  3. >>>   
>>> os.path.abspath("D:\\Notes\\Python\\module.txt")
'D:\\Notes\\Python\\module.txt'
>>> 

os.path.normpath(path):规范path字符串形式

[python] view plain copy
print ?
  1. >>> os.path.normpath(“D:\\Notes\\Python\\module.txt”)  
  2. ’D:\\Notes\\Python\\module.txt’  
>>> os.path.normpath("D:\\Notes\\Python\\module.txt")
'D:\\Notes\\Python\\module.txt'

os.path.split(name):分割文件名与目录(事实上,如果你完全使用目录,它也会将最后一个目录作为文件名而分离,同时它不会判断文件或目录是否存在)

[python] view plain copy
print ?
  1. >>> print(os.path.split(“D:\\Notes\\Python\\test.txt”))  
  2. (’D:\\Notes\\Python’‘test.txt’)  
  3. >>> print(os.path.split(“D:\\Notes\\Python”))  
  4. (’D:\\Notes’‘Python’)  
>>> print(os.path.split("D:\\Notes\\Python\\test.txt"))
('D:\\Notes\\Python', 'test.txt')
>>> print(os.path.split("D:\\Notes\\Python"))
('D:\\Notes', 'Python')

os.path.splitext():分离文件名与扩展名

[python] view plain copy
print ?
  1. >>> os.path.splitext(“D:\\Notes\\Python\\module.txt”)  
  2. (’D:\\Notes\\Python\\module’‘.txt’)  
>>> os.path.splitext("D:\\Notes\\Python\\module.txt")
('D:\\Notes\\Python\\module', '.txt')

os.path.join(path,name):连接目录与文件名或目录

[python] view plain copy
print ?
  1. >>> os.path.join(“D:\\Notes\\Python”,“module.txt”)  
  2. ’D:\\Notes\\Python\\module.txt’  
>>> os.path.join("D:\\Notes\\Python","module.txt")
'D:\\Notes\\Python\\module.txt'

os.path.basename(path):返回文件名

[python] view plain copy
print ?
  1. >>> os.path.basename(“D:\\Notes\\Python\\module.txt”)  
  2. ’module.txt’  
>>> os.path.basename("D:\\Notes\\Python\\module.txt")
'module.txt'

os.path.dirname(path):返回文件路径

[python] view plain copy
print ?
  1. >>> os.path.dirname(“D:\\Notes\\Python\\module.txt”)  
  2. ’D:\\Notes\\Python’  
>>> os.path.dirname("D:\\Notes\\Python\\module.txt")
'D:\\Notes\\Python'

os.system()函数用来运行shell命令
[python] view plain copy
print ?
  1. 从Python中调用Unix/Linux操作系统的命令  
  2. import os  
  3. os.system(’ls -lt’)  
  4.   
  5. import os  
  6. os.system(’ls -lt > output.txt’)  
  7.   
  8. import os  
  9. os.system(”/etc/init.d/apache2 restart”)  
  10. 重启webserver  
从Python中调用Unix/Linux操作系统的命令
import os
os.system('ls -lt')

import os
os.system('ls -lt > output.txt')

import os
os.system("/etc/init.d/apache2 restart")
重启webserver

====EOF====
原文转载自: http://blog.csdn.net/pan_tian/article/details/7686516


 类似资料: