python 系統工具的使用

2021-10-02 22:35:03 字數 3188 閱讀 9901

1.提供一組功能對映python執行時的作業系統,平台與版本:

sys.platform----系統版本

sys.version----python版本

sys.path----環境變數

sys.modules----已經載入的模組

2.觀察異常細節:

sys.exc_info()----獲取最後一次異常細節,返回元組(錯誤類別,錯誤資訊,traceback資訊)

traceback.print_tb(sys.exc_info()[2])----需要匯入traceback模組,利用其print_tb函式,追蹤到上一次錯誤的位置,也就是sys.exc_info()返回的元組的第[2]元素

import traceback

try:

raise keyerror(

'鍵值錯誤'

)except keyerror as e:

print

(sys.exc_info())

traceback.print_tb(sys.exc_info()[

2])(

<

class

'keyerror'

>

, keyerror(

'鍵值錯誤'),

>

) file ""

, line 2,in

raise keyerror(

'鍵值錯誤'

)

3.命令列引數:sys.ar**可以捕獲命令列引數,返回乙個列表。

import sys

defadd

(a,b)

:return a + b

# sys.ar**[0]為檔案目錄

print

(sys.ar**)

iflen

(sys.ar**)

<3:

print

('引數不夠。'

)else

: a =

int(sys.ar**[1]

) b =

int(sys.ar**[2]

)print

(add(a,b)

)

命令提示符下執行結果:

4.標準流:

sys.stdin----標準輸入流,預設等同於input()

sys.stdout----標準輸出流,預設等同於print()

sys.stderr----標準錯誤流

注:std----standard,sys模組在實際程式設計中,命令列引數運用較多。

1.管理工具:

os.environ----environment,環境變數

os.getcwd()----get current word directory獲得當前工作目錄

os.listdir()----列舉目錄下資訊列表,類似於ls

os.chdir()----change directory改變目錄,類似於cd

os.getpid()----獲取當前程序id

os.getppid()----獲取當前父程序id

2.執行shell命令:

windows下的一些指令:dir----檢視檔案資訊,cd----改變目錄,cd…----返回上一級目錄。

os.system()----python指令碼中執行shell命令

os.popen()----python指令碼中執行shell命令並連線輸入輸出流

os.system(

'dir'

)os.popen(

'dir'

)out[48]

:>

os.popen(

'dir'

).readlines(

)out[49]

:[' 驅動器 g 中的卷是 軟體\n'..

....

#檔案資訊省略

注:.system()返回結果可以直接看到資訊,而.popen()返回的結果需要用readlines()等方法讀出。

3.path工具

os.mkdir(『目錄名』)----make dir,建立目錄

os.rmdir(『目錄名』)----remove dir,刪除目錄

os.rename(『舊名』,』新名『)----改名

os.remove(『檔名』)----刪除檔案

4.路徑模組.path:

os.path.isdir(path)----是否目錄

os.path.isfile(path)----是否檔案

os.path.exists(path)----是否存在

os.path.split(path)----拆分路徑

os.path.splitext(path)----拆分路徑副檔名

os.path.join(路徑,檔名)----連線路徑

os.path.normpath(path)----標準化路徑(取決於作業系統)

os.path.abspath(path)----絕對化路徑

import os

os.path.split(r'c:\data\temp\data.txt'

)out[51]

:('c:\\data\\temp'

,'data.txt'

)os.path.splitext(r'c:\data\temp\data.txt'

)out[52]

:('c:\\data\\temp\\data'

,'.txt'

)os.path.join(r'c:\temp'

,'product.csv'

)out[53]

:'c:\\temp\\product.csv'

name = r'c:\data\temp\data.txt'

os.path.dirname(name)

out[56]

:'c:\\data\\temp'

os.path.basename(name)

out[57]

:'data.txt'

# dirname----目錄名稱,basename----根基檔名

python系統工具

os模組應用 os管理工具 import os os.getcwd 檢視當前執行目錄 users mateng pycharmprojects demo os.listdir 檢視當前目錄下有哪些檔案 text1.py error.py add.py text age.py ex shelve.py...

gentoo的系統工具使用

equery使用 請先 emerge gentoolkit 查詢所有已安裝的包 equery l or equery list 檢視安裝的包裝了哪些內容 equery f or equery file 檢視此程式屬於哪個包 equery b or equery belongs 檢視安裝此包用了哪些u...

python 系統工具管理 os sys

os命令列工具 shell 指令碼 系統管理 提供了一組功能對映python執行時的作業系統,平台與功能 import sys 檢視sys的功能 print dir sys 檢視目前的系統版本 print sys.platform 檢視現在直譯器的版本,也就是檢視python的版本 print sy...