最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python學(xué)習(xí)之sys模塊使用教程詳解

 更新時間:2022年03月22日 08:34:54   作者:渴望力量的哈士奇  
sys模塊?與?os包一樣,也是對系統(tǒng)資源進(jìn)行調(diào)用。功能同樣也是非常豐富。本文將對sys模塊的一些簡單且常用的函數(shù)進(jìn)行介紹,感興趣的可以學(xué)習(xí)一下

sys模塊 與 os包一樣,也是對系統(tǒng)資源進(jìn)行調(diào)用。功能同樣也是非常豐富,接下來我們會對 sys模塊的一些簡單且常用的函數(shù)進(jìn)行介紹,主要針對一些非功能性的函數(shù)與屬性來認(rèn)識一些不太常見的 Python 背后的事件。

sys 中的常用方法

函數(shù)名參數(shù)介紹舉例返回值
modules(屬性)將Python啟動時加載的模塊集合起來并返回一個列表sys.modules列表
path(屬性)返回當(dāng)前Py的環(huán)境路徑(當(dāng)前py環(huán)境可以導(dǎo)入內(nèi)置、第三方包與函數(shù)的所在路徑)sys.path列表
exit(函數(shù))arg退出程序(執(zhí)行十行代碼,若在第二行插入sys.exit,則后面的代碼不會執(zhí)行)sys.exit(0)
getdefaultencoding獲取當(dāng)前系統(tǒng)級別的編碼格式(比如 utf-8)sys.getdefaultencoding()字符串
platform(函數(shù))獲取當(dāng)前系統(tǒng)平臺(如windows、Mac、linux)sys.platform()字符串
version(屬性)獲取當(dāng)前 Python 的版本sys.version字符串
argv(屬性)*args獲取程序外部的參數(shù),返回值是一個列表,實際開發(fā)中很常用的一個功能sys.argv列表

示例如下:

import sys


modules = sys.modules       # 將 sys 模塊的 modules 屬性 賦值給 modules 并打印輸出 Python啟動時加載的模塊集合
print(modules)

# sys.exit(0)               # 取消注釋該行代碼,下方所有的代碼將不再執(zhí)行

path = sys.path
print(path)                 # 將 sys 模塊的 path 屬性 賦值給 path 并打印輸出 python 環(huán)境可以導(dǎo)入內(nèi)置、第三方包與函數(shù)的所在路徑

code = sys.getdefaultencoding()     # 將 sys 模塊 的 getdefaultencoding()函數(shù) 賦值給 code 并打印輸出當(dāng)前系統(tǒng)的編碼[utf-8]
print(code)

# >>> 執(zhí)行結(jié)果如下:
# >>> utf-8

print(sys.platform)         # 獲取當(dāng)前系統(tǒng)平臺(如windows、Mac、linux)

# >>> 執(zhí)行結(jié)果如下:
# >>> darwin

print(sys.version)          # 獲取當(dāng)前 Python 的版本

# >>> 執(zhí)行結(jié)果如下:
# >>> 3.8.7 (v3.8.7:6503f05dd5, Dec 21 2020, 12:45:15) 
# >>> [Clang 6.0 (clang-600.0.57)]

接下來的 sys.argv 可要好好說一說了。上文我們提到 argv 是獲取程序外部的參數(shù),返回值是一個列表。

說實話我一直在 python 解釋器、idea 運(yùn)行,試圖從結(jié)果發(fā)現(xiàn)它的用途,然而結(jié)果一直都是沒結(jié)果,也在網(wǎng)上查了許多資料,大部分都是轉(zhuǎn)裁和復(fù)制的。給的都是簡明python教程上那個一長串代碼的例子,說看了就明白了,可我看得暈頭轉(zhuǎn)向的還是沒真正明白,只知道 sys.argv[0] 表示當(dāng)前腳本本身文件路徑的該腳本文件。后來經(jīng)過大量努力,多方求教才真正明悟了,謹(jǐn)以記錄和分享,希望能從另一個角度給同在求索過程中的同學(xué)一點啟發(fā)。

sys.argv 其實就是一個從程序外部獲取參數(shù) 的橋梁,這里所說的 外部 很關(guān)鍵,所以那些試圖從代碼來說明它作用的解釋一直沒看明白。因為我們需要先在終端執(zhí)行腳本, 并從外部傳入?yún)?shù)(可以是多個),所以獲得的是一個列表(list),也就是說sys.argv其實可以看作是一個列表,所以才能用[ ]提取其中的元素。其第一個元素是程序本身,隨后才依次是外部傳入的參數(shù)。

我們先來看一下 sys.argv 返回的是什么?

import sys


print(sys.argv)

# >>> 執(zhí)行結(jié)果如下:
# >>> ['/Users/username/PycharmProjects/XXXXX/XXXXX/animal/package_sys.py']
# >>> 從執(zhí)行結(jié)果可以看出 其輸出的就是當(dāng)前路徑下的當(dāng)前腳本本身,也就可以理解為 'sys.argv' 其實就是運(yùn)行自身的腳本文件 
# >>> 我們從 '外部' 運(yùn)行該腳本文件的時候,需要傳入?yún)?shù)(可以是多個)

接下來我們將上面的代碼改為如下:

import sys


print(sys.argv[0], sys.argv[1])

# >>> 接下來我們進(jìn)入 Terminal 終端 利用 python 執(zhí)行 該腳本文件,并傳入 測試參數(shù),結(jié)果如下圖。

為了更好的 演示 sys.argv 屬性,我們將上文演示的 sys 常用的函數(shù)與屬性進(jìn)行一下修改。示例如下:

import sys

command = sys.argv[1]
if command == 'modules':
    modules = sys.modules
    print(modules)
elif command == 'path':
    path = sys.path
    print(path)
elif command == 'encoding':
    code = sys.getdefaultencoding()
    print(code)
elif command == 'platform':
    print(sys.platform)
elif command == 'version':
    print(sys.version)
else:
    print('該命令未識別')

然后在 Terminal 終端 執(zhí)行該腳本,如下圖:

到此這篇關(guān)于Python學(xué)習(xí)之sys模塊使用教程詳解的文章就介紹到這了,更多相關(guān)Python sys模塊內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 如何更換python默認(rèn)編輯器的背景色

    如何更換python默認(rèn)編輯器的背景色

    在本篇內(nèi)容里小編給大家整理的是一篇關(guān)于如何更換python默認(rèn)編輯器的背景色的相關(guān)內(nèi)容,有興趣的朋友們可以學(xué)習(xí)參考下。
    2020-08-08
  • python腳本監(jiān)控Tomcat服務(wù)器的方法

    python腳本監(jiān)控Tomcat服務(wù)器的方法

    這篇文章主要介紹了利用python腳本監(jiān)控Tomcat服務(wù)器的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-07-07
  • 利用機(jī)器學(xué)習(xí)預(yù)測房價

    利用機(jī)器學(xué)習(xí)預(yù)測房價

    這篇文章主要介紹了利用機(jī)器學(xué)習(xí)回歸模型預(yù)測房價,解釋清晰,代碼詳細(xì),是很不錯的機(jī)器學(xué)習(xí)實戰(zhàn)演練,對機(jī)器學(xué)習(xí)感興趣的朋友可以參考一下
    2021-04-04
  • PyTorch解決ModuleNotFoundError: No module named ‘torch’

    PyTorch解決ModuleNotFoundError: No module named

    本文主要介紹了PyTorch解決ModuleNotFoundError: No module named ‘torch’,這個錯誤意味著我們的Python環(huán)境中沒有安裝PyTorch庫,無法正常使用其功能,下面就來具體介紹一下
    2024-03-03
  • Python基于xlrd模塊處理合并單元格

    Python基于xlrd模塊處理合并單元格

    這篇文章主要介紹了Python基于xlrd模塊處理合并單元格,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-07-07
  • Python中def()函數(shù)的實戰(zhàn)練習(xí)題

    Python中def()函數(shù)的實戰(zhàn)練習(xí)題

    def是define的縮寫,用來自定義函數(shù),下面這篇文章主要給大家介紹了關(guān)于Python中def()函數(shù)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2022-07-07
  • Python中強(qiáng)大的函數(shù)map?filter?reduce使用詳解

    Python中強(qiáng)大的函數(shù)map?filter?reduce使用詳解

    Python是一門功能豐富的編程語言,提供了許多內(nèi)置函數(shù),以簡化各種編程任務(wù),在Python中,map(),filter()和reduce()是一組非常有用的函數(shù),它們允許對可迭代對象進(jìn)行操作,從而實現(xiàn)數(shù)據(jù)轉(zhuǎn)換、篩選和累積等操作,本文將詳細(xì)介紹這三個函數(shù),包括它們的基本用法和示例代碼
    2023-11-11
  • 漂亮的Django Markdown富文本app插件的實現(xiàn)

    漂亮的Django Markdown富文本app插件的實現(xiàn)

    這篇文章主要介紹了漂亮的Django Markdown富文本app插件的實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-01-01
  • Python pandas如何根據(jù)指定條件篩選數(shù)據(jù)

    Python pandas如何根據(jù)指定條件篩選數(shù)據(jù)

    這篇文章主要介紹了Python pandas如何根據(jù)指定條件篩選數(shù)據(jù)問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-02-02
  • 基于python和pygame庫實現(xiàn)刮刮樂游戲

    基于python和pygame庫實現(xiàn)刮刮樂游戲

    這篇文章主要介紹了如何基于python和pygame庫實現(xiàn)刮刮樂游戲,文中通過代碼示例和圖文給大家講解的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-03-03

最新評論

钦州市| 阿巴嘎旗| 贵定县| 陈巴尔虎旗| 雷山县| 马公市| 出国| 襄汾县| 寿阳县| 万全县| 根河市| 古交市| 高雄市| 重庆市| 玉树县| 波密县| 晋宁县| 嵩明县| 江永县| 新沂市| 巧家县| 浠水县| 垣曲县| 平远县| 于都县| 阜城县| 张家界市| 巴林左旗| 南和县| 攀枝花市| 龙岩市| 印江| 始兴县| 福建省| 寻甸| 靖宇县| 陇西县| 兖州市| 石河子市| 洛宁县| 柳州市|