python os

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):返回文件路徑

相關文章
相關標籤/搜索