一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服務器之家 - 腳本之家 - Python - Python中使用異常處理來判斷運行的操作系統平臺方法

Python中使用異常處理來判斷運行的操作系統平臺方法

2020-05-20 09:38腳本之家 Python

這篇文章主要介紹了Python中使用異常處理來判斷運行的操作系統平臺方法,這個方法比較新穎,,需要的朋友可以參考下

代碼實例:

復制代碼 代碼如下:

try:
    import termios, TERMIOS               1
except ImportError:
    try:
        import msvcrt                  2
    except ImportError:
        try:
            from EasyDialogs import AskPassword   3
        except ImportError:
            getpass = "default_getpass"        4
        else:
            getpass = "AskPassword"          5
    else:
        getpass = "win_getpass"
else:
    getpass = "unix_getpass"

 

1:termios 是 UNIX 獨有的一個模塊,它提供了對于輸入終端的底層控制。如果這個模塊無效 (因為它不在你的系統上,或你的系統不支持它),則導入失敗,Python 引發我們捕捉的 ImportError 異常。

2:OK,我們沒有 termios,所以讓我們試試 msvcrt,它是 Windows 獨有的一個模塊,可以提供在 Microsoft Visual C++ 運行服務中的許多有用的函數的一個API。如果導入失敗,Python 會引發我們捕捉的 ImportError 異常。

3:如果前兩個不能工作,我們試著從 EasyDialogs 導入一個函數,它是 Mac OS 獨有的一個模塊,提供了各種各樣類型的彈出對話框。再一次,如果導入失敗,Python 會引發一個我們捕捉的 ImportError 異常。

4:這些平臺特定的模塊沒有一個有效 (有可能,因為 Python 已經移植到了許多不同的平臺上了),所以我們需要回頭使用一個缺省口令輸入函數 (這個函數定義在 getpass 模塊中的別的地方)。注意我們在這里所做的:我們將函數 default_getpass 賦給變量 getpass。如果你讀了官方 getpass 文檔,它會告訴你 getpass 模塊定義了一個 getpass 函數。它是這樣做的:通過綁定 getpass 到正確的函數來適應你的平臺。然后當你調用 getpass 函數時,你實際上調用了平臺特定的函數,是這段代碼已經為你設置好的。你不需要知道或關心你的代碼正運行在何種平臺上;只要調用 getpass,則它總能正確處理。

5:一個 try...except 塊可以有一條 else 子句,就像 if 語句。如果在 try 塊中沒有異常引發,然后 else 子句被執行。在本例中,那就意味著如果 from EasyDialogs import AskPassword 導入可工作,所以我們應該綁定 getpass 到 AskPassword 函數。其它每個 try...except 塊有著相似的 else 子句,當我們發現一個 import 可用時,就綁定 getpass 到適合的函數。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 青草色视频 | 3d美女触手怪爆羞羞漫画 | 轻轻操在线视频 | 欧美日韩亚洲国内综合网香蕉 | 国产精品欧美在线观看 | 国产 日韩 欧美视频二区 | 免费在线观看网址入口 | 女人爽到喷水的视频免费 | 99久热只有精品视频免费看 | 久久综久久美利坚合众国 | 无码人妻精品一区二区蜜桃在线看 | 成在线人免费视频一区二区三区 | 午夜国产在线视频 | 青青成人福利国产在线视频 | 娇妻与老头绿文小说系列 | 国产在线伊人 | aaa一级毛片免费 | 齐天大性之七仙女欲春迅雷链接 | 手机看片自拍自自拍日韩免费 | 久久精品手机观看 | 亚洲色图中文字幕 | 5g影院天天5g天天爽大陆 | 免费片在线观看高清 | 日本护士撒尿xxxxhd | 小女生RAPPER入口 | 性欧美金发洋妞xxxxbbbb | 免费视频精品一区二区 | 毛片免费全部免费观看 | 青丝视频免费版在线看 | 视频高清在线观看 | 精品视频在线免费播放 | 天天干夜夜玩 | 九九精品免视看国产成人 | 韩剧消失的眼角膜免费完整版 | 日本亚洲欧洲高清有码在线播放 | 好爽好深好猛好舒服视频上 | julia ann一hd| 欧美综合一区二区三区 | 四虎网址 | 欧美日韩精品一区二区三区高清视频 | segou视频在线观看 |