Python標(biāo)準(zhǔn)庫sys庫常用功能詳解
更新時(shí)間:2022年07月12日 10:34:34 作者:匿名V5程序員
這篇文章主要介紹了Python標(biāo)準(zhǔn)庫sys庫常用功能詳解,sys是Python提供的程序與解釋器交互的標(biāo)準(zhǔn)庫,文章圍繞主題展開相關(guān)介紹,需要的朋友可以參考一下
1、查看版本信息
# coding:utf-8 import sys # 獲取 Python版本信息 print(sys.version) # 獲取解釋器中C的API版本 print(sys.api_version) # 獲取Windows系統(tǒng)功能版本 print(sys.getwindowsversion()) # sys.getwindowsversion(major=10, minor=0, build=17763, platform=2, service_pack='') # 獲取Windows系統(tǒng)功能版本 print(sys.getwindowsversion()) # 獲取Python 解釋器的版本值 print(sys.hexversion) # 50988528 # 獲取當(dāng)前正在運(yùn)行的Python解釋器的實(shí)現(xiàn)信息的對(duì)象 print(sys.implementation) # name 當(dāng)前解釋器的名稱 # version 當(dāng)前解釋器的版本 # hexversion 解釋器的版本值 # cache_tag 緩存標(biāo)記信息 # 獲取Windows平臺(tái)上形成注冊(cè)表項(xiàng)的版本號(hào) print(sys.winver)
2、四大實(shí)現(xiàn)詳細(xì)信息
# coding:utf-8 import sys # 獲取浮點(diǎn)類型的實(shí)現(xiàn)信息 print(sys.float_info) # 獲取哈希元祖的實(shí)現(xiàn)信息 print(sys.hash_info) # 獲取整數(shù)類型的實(shí)現(xiàn)信息 print(sys.int_info) # 獲取線程信息 print(sys.thread_info)
3、查看Python解釋器的相關(guān)信息
# coding:utf-8 import sys # 獲取Python解釋器導(dǎo)入的內(nèi)建模塊列表 print(sys.builtin_module_names) # 獲取解釋器當(dāng)前分配的內(nèi)存塊數(shù),此函數(shù)主要用于跟蹤和調(diào)試內(nèi)存泄漏 print(sys.getallocatedblocks()) # 獲取當(dāng)前遞歸的限制,也就是Python解釋器堆棧最大深度的值 # 該限制可防止無限遞歸導(dǎo)致C堆棧溢出和Python崩潰 # 可以通過setrecursionlimit()來調(diào)整 print(sys.getrecursionlimit()) # 獲取解釋器的“線程切換間隔。 print(sys.getswitchinterval()) # 0.005 # 獲取當(dāng)前正在運(yùn)行的Python解釋器的實(shí)現(xiàn)信息 # name 當(dāng)前解釋器的名稱 # version 當(dāng)前解釋器的版本 # hexversion 解釋器的版本值 # cache_tag 緩存標(biāo)記信息 print(sys.implementation) # 獲取Python解釋器是否關(guān)閉 print(sys.is_finalizing()) # False # 獲取當(dāng)前程序及解釋器信息 print(sys.orig_argv) # 獲取Python 解釋器的版權(quán)信息 print(sys.copyright) # 獲取解釋器的安裝路徑信息 print(sys.base_exec_prefix) # 獲取解釋器的安裝路徑信息 print(sys.base_prefix) # 獲取python的安裝路徑 print(sys.prefix)
3、設(shè)置python解釋器信息
4、標(biāo)準(zhǔn)輸入、輸出和錯(cuò)誤流
- sys.stdin, 標(biāo)準(zhǔn)輸入流
- sys.stdout,標(biāo)準(zhǔn)輸出流
- sys.stderr,標(biāo)準(zhǔn)錯(cuò)誤流
aa = sys.stdin.readline() sys.stderr.write('stderr info\n') sys.stdout.write('stdout info\n')
5、查看系統(tǒng)平臺(tái)相關(guān)信息
# coding:utf-8 import sys # 獲取平臺(tái)標(biāo)識(shí),Windows平臺(tái)的值為‘win32',linux的值為‘linux' print(sys.platform) # 獲取當(dāng)前平臺(tái)最大的整形值,與平臺(tái)位數(shù)相關(guān),32位系統(tǒng)平臺(tái) 為 2**(31-1) -1 ,64位平臺(tái)為2**(64-1)-1 print(sys.maxsize, 2**(64-1) - 1) # 獲取當(dāng)前的默認(rèn)字符串編碼格式 print(sys.getdefaultencoding()) # 獲取在Unicode文件名和字節(jié)文件名之間轉(zhuǎn)換的錯(cuò)誤模式的名稱 print(sys.getfilesystemencodeerrors()) # 獲取在Unicode文件名和字節(jié)文件名之間轉(zhuǎn)換的編碼名稱 print(sys.getfilesystemencoding()) # 獲取由setprofile()設(shè)置的全局配置。 print(sys.getprofile()) aa = 111 print(aa) # 獲取對(duì)象的引用次數(shù) print(sys.getrefcount(aa)) # 獲取對(duì)象的大小,單位為字節(jié) print(sys.getsizeof(aa)) i = 100 print(sys.getsizeof(i)) # 獲取repr()函數(shù)對(duì)浮點(diǎn)數(shù)x的行為方式,short表示repr(x)生成短字符串 print(sys.float_repr_style) # 獲取 unicode 編碼的最大值 print(sys.maxunicode) # 獲取本地的字節(jié)順序, 不同的CPU采用的字節(jié)順序可能不一樣; # 常見的有l(wèi)ittle-endian和big-endian; # little-endian是指將低位字節(jié)放在前面,高位字節(jié)放在后面,big-endian剛好相反; # sys.byteorder返回值為little為little-endian,big為big-endian print(sys.byteorder) # 獲取 模塊搜索路徑的列表 , 由環(huán)境變量PYTHONPATH進(jìn)行初始化及安裝時(shí)的默認(rèn)值組成 print(sys.path) # 獲取python模塊的信息 print(sys.modules) # 返回值是一個(gè)以模塊名為key的字典,查看os模塊的信息 print(sys.modules['os'])
6、其他
# coding:utf-8 import sys # 獲取命令行參數(shù) print(sys.argv) # 查看命令行標(biāo)志的狀態(tài) print(sys.flags) # 將參數(shù)值標(biāo)準(zhǔn)輸出 sys.displayhook('21313132') # 獲取當(dāng)前正在處理的異常類的異常詳細(xì)信息 # sys.exc_info()返回三個(gè)值的元組,type為異常類型、value為異常類型實(shí)例traceback為回溯對(duì)象 print(sys.exc_info()) # 定義審計(jì)內(nèi)容 def audit_hook(event, *args): if event in ['test', 'lll']: print('event:' + event) else: print(f"{event}未監(jiān)聽") # 注冊(cè)審計(jì) sys.addaudithook(audit_hook) # 調(diào)用審計(jì) sys.audit('test') # event:test sys.audit('12') # 12未監(jiān)聽 # 強(qiáng)制退出程序,參數(shù)為程序退出的返回值,正常退出為 sys.exit(0) 或 sys.exit() # sys.exit(0) # 異常退出 # sys.exit(-1)
到此這篇關(guān)于Python標(biāo)準(zhǔn)庫sys庫常用功能詳解的文章就介紹到這了,更多相關(guān)Python sys庫內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用pandas對(duì)矢量化數(shù)據(jù)進(jìn)行替換處理的方法
下面小編就為大家分享一篇使用pandas對(duì)矢量化數(shù)據(jù)進(jìn)行替換處理的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-04-04使用Pytorch+PyG實(shí)現(xiàn)MLP的詳細(xì)過程
圖神經(jīng)網(wǎng)絡(luò)是最近 AI 領(lǐng)域最熱門的方向之一,下面這篇文章主要給大家介紹了關(guān)于使用Pytorch+PyG實(shí)現(xiàn)MLP的詳細(xì)過程,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-03-03Python實(shí)現(xiàn)求一個(gè)集合所有子集的示例
今天小編就為大家分享一篇Python 實(shí)現(xiàn)求一個(gè)集合所有子集的示例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-05-05Python+Turtle實(shí)現(xiàn)繪制可愛的小倉鼠
肉嘟嘟的小動(dòng)物很是可愛,這篇文章主要為大家介紹一下如何運(yùn)用Python中的turtle庫控制函數(shù)繪制小倉鼠,文中的實(shí)現(xiàn)方法講解詳細(xì),感興趣的可以嘗試一下2022-10-10