2012.3.15
html
若是你但願你的python程序可以與平臺無關的話,這個模塊是尤其重要的。即它容許一個程序在編寫後不須要任何改動,也不會發生任何問題,就能夠在Linux和 Windows下運行,看到這裏以爲python的跨平臺的強大把,精彩還在後面:python
1. os.getcwd()函數獲得當前工做目錄,即當前Python腳本工做的目錄路徑,這個在linux上用python開發東西用的上。
2. os.listdir()返回指定目錄下的全部文件和目錄名。
3. os.system()能夠用來運行shell命令,和
python popen比較類似,可是有些不一樣
上面說到的3個方法,咱們下面作下實驗:
你能夠在你當前的目錄下新創建個文件,名字是test.py
test.py代碼:
#encoding=utf-8
import os
path = os.getcwd()#取得當前的路徑
print os.listdir(path)#顯示當前路徑的文件目錄和文件
print os.system('ping www.baidu.com')#ping 到百度的速度
下面是python os的另外幾個關於文件和目錄的方法:
1. os.path.split(name):分割文件名與目錄(事實上,若是你徹底使用目錄,它也會將最後一個目錄做爲文件名而分離,同時它不會判斷文件或目錄是否存在
2. os.path.isfile()和 os.path.isdir()函數分別檢驗給出的路徑是一個文件仍是目錄
3. os.path.abspath(name):得到絕對路徑
4. os.path.splitext():分離文件名與擴展名
5. os.path.join(path,name):鏈接目錄與文件名或目錄
6. os.path.basename(path):返回文件名
7. os.path.dirname(path):返回文件路徑
我在創建一個file.py文件來實現上面的方法:
file.py代碼:
#encoding=utf-8
import os
path = os.getcwd()#取得當前的路徑,path的內容是:/home/haha/python
print os.path.split(path)#分割文件名與目錄,個人結果是('/home/haha','python')
dir = os.path.split(path)[0]
if os.path.isdir(dir):#若是提供的是目錄的話,該方法返回true,不然返回false,isfile()方法判斷若是是文件則返回true,不是文件將返回false
print dir,'is a dir'
還剩的幾個方法,讀者能夠本身去實驗下,這樣效果更好,對本身熟悉python os模塊有很大的幫助!除了掌握下上面的內容,建議你看下 python os.system, python sys.path用法的用法。linux
Python的os模塊,包含了廣泛的操做系統功能,這裏主要學習與路徑相關的函數:shell
os.listdir(dirname):列出dirname下的目錄和文件函數
os.getcwd():得到當前工做目錄post
os.curdir:返回當前目錄('.')學習
os.chdir(dirname):改變工做目錄到dirnamespa
os.path.isdir(name):判斷name是否是一個目錄,name不是目錄就返回false操作系統
os.path.isfile(name):判斷name是否是一個文件,不存在name也返回falseorm
os.path.exists(name):判斷是否存在文件或目錄name
os.path.getsize(name):得到文件大小,若是name是目錄返回0
os.path.abspath(name):得到絕對路徑
os.path.normpath(path):規範path字符串形式
os.path.split(name):分割文件名與目錄(事實上,若是你徹底使用目錄,它也會將最後一個目錄做爲文件名而分離,同時它不會判斷文件或目錄是否存在)
os.path.splitext():分離文件名與擴展名
os.path.join(path,name):鏈接目錄與文件名或目錄
os.path.basename(path):返回文件名
os.path.dirname(path):返回文件路徑