pythoncurdir
#encoding:utf-8
importos
printos.path.abspath("test")
使用os.path.abspath方法可以輸出文件夾的絕對路徑。
參數裡面要寫相對路徑,比如腳本和文件夾在同一路徑,就直接寫名字即可。如果文件夾在上一個目錄,就寫成"../test"。
其實從方法名也能看出來,是一個相對路徑轉絕對路徑的方法。
② python有哪些模塊
Python是一門非常高級的編程語言,內置了許多標准模塊,比如:sys、os、datetime等。
os模塊
os.getcwd() # 獲取當前工作目錄,即當前python腳本工作的目錄路徑
os.chdir("dirname") # 改變當前腳本工作目錄;相當於shell下cd
os.curdir # 返回當前目錄: ('.')
os.pardir # 獲取當前目錄的父目錄字元串名:('..')
os.makedirs('dirname1/dirname2') # 可生成多層遞歸目錄
os.removedirs('dirname1') # 若目錄為空,則刪除,並遞歸到上一級目錄,如若也為空,則刪除,依此類推
os.mkdir('dirname') # 生成單級目錄;相當於shell中mkdir dirname
os.rmdir('dirname') # # 刪除單級空目錄,若目錄不為空則無法刪除,報錯;相當於shell中rmdir dirname
os.listdir('dirname') # 列出指定目錄下的所有文件和子目錄,包括隱藏文件,並以列表方式列印
os.remove() # 刪除一個文件
os.rename("oldname","newname") # 重命名文件/目錄
os.stat('path/filename') # 獲取文件/目錄信息
os.sep # 輸出操作系統特定的路徑分隔符,win下為"\",Linux下為"/"
os.linesep # 輸出當前平台使用的行終止符,win下為" ",Linux下為" "
os.pathsep # 輸出用於分割文件路徑的字元串 win下為;,Linux下為:
os.name # 輸出字元串指示當前使用平台。win->'nt'; Linux->'posix'
os.system("bash command") # 運行shell命令,直接顯示
os.environ # 獲取系統環境變數
os.path.abspath(path) # 返回path規范化的絕對路徑
os.path.split(path) # 將path分割成目錄和文件名二元組返回
os.path.dirname(path) # 返回path的目錄。其實就是os.path.split(path)的第一個元素
os.path.basename(path) #
返回path最後的文件名。如何path以/或結尾,那麼就會返回空值。即os.path.split(path)的第二個元素
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.path.getatime(path) # 返回path所指向的文件或者目錄的最後訪問時間
os.path.getmtime(path) # 返回path所指向的文件或者目錄的最後修改時間
os.path.getsize(path) # 返回path的大小
sys模塊
sys.argv # 命令行參數List,第一個元素是程序本身路徑
sys.exit(n) # 退出程序,正常退出時exit(0)
sys.version # 獲取Python解釋程序的版本信息
sys.maxint # 最大的Int值
sys.path # 返回模塊的搜索路徑,初始化時使用PYTHONPATH環境變數的值
sys.platform # 返回操作系統平台名稱
datetime模塊
datetime.today()返回一個表示當前本期日期時間的datetime對象
datetime.now([tz])返回指定時區日期時間的datetime對象,如果不指定tz參數則結果同上
datetime.utcnow()返回當前utc日期時間的datetime對象
datetime.fromtimestamp(timestamp[, tz])根據指定的時間戳創建一個datetime對象
datetime.utcfromtimestamp(timestamp)根據指定的時間戳創建一個datetime對象
datetime.strptime(date_str, format)將時間字元串轉換為datetime對象
③ python 怎麼查看當前路徑
先要裝載 os模塊:
import os
print os.getcwd()
或者
print os.path.abspath(os.curdir)
print os.path.abspath('.')
就可以了。
( . 代表當前的路徑,.. 代表當前路徑的上一級路徑。這在UNIX和Windows系統意義是類似的。
例如:
以Winodws系統為例:
當前路徑是F:\Temp, 則 . 的絕對路徑就是F:\Temp
.. 的絕對路徑就是F:\
)
要獲得上級目錄的路徑也很簡單,print os.path.abspath('..')就可以了。
要改變當前路徑,os.chdir(path) 就可以了 path里填要改變到的目錄,例如os.chdir('D:\Program Files')
這樣大部分的文件操作現在是相對於D:\Program Files 來了,例如fobj = open('Hello.txt'),實際會打開D:\Program Files\Hello.txt文件。
不要通過sys.argv[0]獲得當前路徑,那是不正確的。sys.argv[0] 是當前執行的Python腳本的文件名,不一定是當前的路徑。
希望對你有所幫助。
④ python 中os.pardir什麼意思
os.pardir- 路徑組件,意味著將目錄樹向上遍歷一級(例如,「 ..」)。
os.path 函數可用於將表示文件名的字元串解析為其組成部分。重要的是要意識到這些功能不依賴於實際存在的路徑。路徑解析取決於以下定義的一些 os 變數:
1、os.sep- 路徑部分之間的分隔符。
2、os.extsep- 文件名和文件「擴展名」之間的分隔符(例如,「 .」)。
3、os.curdir- 引用當前目錄的路徑組件(例如,「 .」)。
(4)pythoncurdir擴展閱讀
os.getcwd(): 獲取當前工作目錄,即當前python腳本工作的目錄路徑。
os.chdir("dirname") :改變當前腳本工作目錄;相當於shell下cd。
os.curdir 返回當前目錄: ('.')。
os.pardir 獲取當前目錄的父目錄字元串名:('..')。
os.makedirs('dirname1/dirname2') :可生成多層遞歸目錄。
os.removedirs('dirname1'): 若目錄為空,則刪除,並遞歸到上一級目錄,如若也為空,則刪除,依此類推。
⑤ python語言,如何在已有的文件夾下創建新的文件夾
可以使用os包的mkdir函數來創建新的文件夾。
mkdir函數接受一個參數path指定新建文件夾的路徑,示例代碼如下:
importos
cur_dir='D:curdir'
folder_name=''
ifos.path.isdir(cur_dir):
os.mkdir(os.path.join(cur_dir,folder_name))
為了確保已有的文件夾真實存在,示例代碼中使用了os.path.isdir函數判斷已有文件夾的路徑是否正確。
新的文件夾的路徑可以由os.path.join函數,將已有文件夾的路徑和新建文件夾文件名連接起來得到。由於Windows操作系統和Linux操作系統,路徑的連接符不同,使用os.path.join連接能夠確保同時在不同的操作系統中正常工作。
⑥ python怎麼用遞歸遍歷多層目錄樹
#coding=utf-8
search_id = '69d0'
search_list = [{'id':'0337', 'name':'de', 'parent_id':'None'},
{'id':'2ddf', 'name':'se', 'parent_id':'None'},
{'id':'3010', 'name':'12', 'parent_id':'69d0'},
{'id':'3119', 'name':'121', 'parent_id':'3010'},
{'id':'3229', 'name':'1211', 'parent_id':'3119'},
{'id':'3d37', 'name':'14', 'parent_id':'69d0'},
{'id':'58c8', 'name':'11', 'parent_id':'69d0'},
{'id':'63b9', 'name':'a','parent_id':'None'},
{'id':'954c', 'name':'n', 'parent_id':'63b9'},
{'id':'69d0', 'name':'1', 'parent_id':'954c'},
{'id':'d2f9', 'name':'13', 'parent_id':'69d0'},
{'id':'defb', 'name':'test', 'parent_id':'None'}]
search_ids = []
#例如如果search_id = '69d0' search_ids=[3010,3d37,58c8,d2f9,3119,3229]
def search_pid(pid,id_list,id_results):
for id in id_list:
if id['id'] not in id_results:
if id['parent_id'] in pid:
id_results.append(id['id'])
pid.append(id['id'])
search_pid(pid,id_list,id_results)
search_pid([search_id],search_list,search_ids)
print search_ids
⑦ Python的os庫的使用
python os庫有很多和操作系統相關的功能。
其實不僅僅如此,os庫中還有很多和文件,路徑,執行系統命令相關的。
下面是os模塊常用的方法.
1.os.sep 可以取代操作系統特定的路徑分割符
2.os.name 字元串指示你正在使用的平台。比如對於Windows,它是'nt',而對於Linux/Unix用戶,它是'posix'
3.os.getcwd() 函數得到當前工作目錄,即當前Python腳本工作的目錄路徑
4.os.getenv() 用來讀取環境變數
5.os.putenv() 用來設置環境變數
6.os.listdir() 返回指定目錄下的所有文件和目錄名
7os.remove() 函數用來刪除一個文件
8.os.system() 函數用來運行shell命令
9.os.linesep 字元串給出當前平台使用的行終止符。例如,Windows使用'/r/n',Linux使用'/n'而Mac使用'/r'。
10.os.path.split() 函數返回一個路徑的目錄名和文件名
11.os.path.isfile() 檢驗給出的路徑是一個文件
12os.path.isdir() 檢驗給出的路徑是一個目錄
13.os.path.existe() 函數用來檢驗給出的路徑是否真地存在
14.os.listdir(dirname) 列出dirname下的目錄和文件
15.os.getcwd() 獲得當前工作目錄
16.os.curdir 返回當前目錄('.')
17.os.chdir(dirname) 改變工作目錄到dirname
os.path都是和路徑指定的文件,目錄,和路徑字元串有關系的函數
os.path.isdir(name) 判斷name是不是一個目錄,name不是目錄就返回false
os.path.isfile(name) 判斷name是不是一個文件,不存在name也返回false
os.path.exists(name) 判斷是否存在文件或目錄name
os.path.getsize(name) 獲得文件大小,如果name是目錄返回0L
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) 返迴文件路徑