




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第python標(biāo)準(zhǔn)庫學(xué)習(xí)之sys模塊詳解目錄前言處理命令行參數(shù)sys.exit(n)退出程序,正常退出時(shí)exit(0)sys.version獲取Python解釋程序的版本信息sys.platform返回操作系統(tǒng)平臺名稱sys.stdin.readline()與inputsys.stdout與print總結(jié)補(bǔ)充:sys模塊的實(shí)例
前言
sys模塊是與python解釋器交互的一個(gè)接口。sys模塊提供了許多函數(shù)和變量來處理Python運(yùn)行時(shí)環(huán)境的不同部分。
處理命令行參數(shù)
在解釋器啟動(dòng)后,argv列表包含了傳遞給腳本的所有參數(shù),列表的第一個(gè)元素為腳本自身的名稱。
sys.argv[0]表示程序自身sys.argv[1]表示程序的第一個(gè)參數(shù)sys.argv[2]表示程序的第二個(gè)參數(shù)
可以做個(gè)測試,如下圖:
sys.exit(n)退出程序,正常退出時(shí)exit(0)
#!/usr/bin/envpython
#-*-coding:utf-8-*-
importsys
ifa=2:
sys.exit(8)
#注釋:退出python執(zhí)行程序,下面的代碼將不會執(zhí)行,如同shell中的exit一樣。
sys.version獲取Python解釋程序的版本信息
#!/usr/bin/envpython
#-*-coding:utf-8-*-
importsys
print(sys.version)
運(yùn)行結(jié)果:
3.7.0(v3.7.0:1bf9cc5093,Jun272025,04:59:51)[MSCv.191464bit(AMD64)]
sys.platform返回操作系統(tǒng)平臺名稱
#!/usr/bin/envpython
#-*-coding:utf-8-*-
importsys
print(sys.platform)
運(yùn)行結(jié)果:
win32
sys.stdin.readline()與input
importsys
#sys.stdin.readline()相當(dāng)于input,區(qū)別在于input不會讀入'\n'
aa=sys.stdin.readline()#輸入數(shù)據(jù)多一個(gè)'\n'
bb=input('請輸入:')
print(len(aa))
print(len(bb))
iloveDL
請輸入:iloveDL
9
運(yùn)行結(jié)果:
22請輸入:2232
可以看出:
①sys.stdin.readline()方式與input方式的區(qū)別是:len(aa)元素中多了一個(gè)\n換行符。即sys.stdin.readline()方式會讀入換行符。
②還有一個(gè)區(qū)別在于,input()里面可以直接傳入文本,然后打印出來。
sys.stdout與print
sys.stdout.write('hello'+'\n')
print('hello')
上面的兩種打印方式是等價(jià)的,例如:
importsys
#sys.stdin.readline()相當(dāng)于input,區(qū)別在于input不會讀入'\n'
aa=sys.stdin.readline()
bb=input('請輸入:')
sys.stdout.write(str(len(aa))+'\n')#默認(rèn)無法實(shí)現(xiàn)print方式的sep參數(shù)功能,所以需要手動(dòng)在后面添加一個(gè)換行符
print(len(bb))
運(yùn)行結(jié)果:
11請輸入:1132
注:sys.stdout.write(obj+\n)中的obj只能是字符串。
總結(jié)
#-*-coding:utf-8-*-
#Python中sys模塊:該模塊提供對解釋器使用或維護(hù)的一些變量的訪問,以及與解釋器強(qiáng)烈交互的函數(shù)
#sys.argv#命令行參數(shù)List,第一個(gè)元素是程序本身路徑
#sys.modules.keys()#返回所有已經(jīng)導(dǎo)入的模塊列表
#sys.exc_info()#獲取當(dāng)前正在處理的異常類,exc_type、exc_value、exc_traceback當(dāng)前處理的異常詳細(xì)信息
#sys.exit(n)#程序,正常退出時(shí)exit(0)
#sys.hexversion#獲取Python解釋程序的版本值,16進(jìn)制格式如:0x020403F0
#sys.version#獲取Python解釋程序的版本信息
#sys.maxint#最大的Int值
#sys.maxunicode#最大的Unicode值
#sys.modules#返回系統(tǒng)導(dǎo)入的模塊字段,key是模塊名,value是模塊
#sys.path#返回模塊的搜索路徑,初始化時(shí)使用PYTHONPATH環(huán)境變量的值
#sys.platform#返回操作系統(tǒng)平臺名稱
#sys.stdout#標(biāo)準(zhǔn)輸出
#sys.stdin#標(biāo)準(zhǔn)輸入
#sys.stderr#錯(cuò)誤輸出
#sys.exc_clear()#用來清除當(dāng)前線程所出現(xiàn)的當(dāng)前的或最近的錯(cuò)誤信息
#sys.exec_prefix#返回平臺獨(dú)立的python文件安裝的位置
#sys.byteorder#本地字節(jié)規(guī)則的指示器,big-endian平臺的值是'big',little-endian平臺的值是'little'
#sys.copyright#記錄python版權(quán)相關(guān)的東西
#sys.api_version#解釋器的C的API版本
#sys.version_info#獲取Python解釋器的版本信息
#sys.getwindowsversion#獲取Windows的版本
#sys.getdefaultencoding#返回當(dāng)前你所用的默認(rèn)的字符編碼格式
#sys.getfilesystemencoding#返回將Unicode文件名轉(zhuǎn)換成系統(tǒng)文件名的編碼的名字
#sys.setdefaultencoding(name)#用來設(shè)置當(dāng)前默認(rèn)的字符編碼
#sys.builtin_module_names#Python解釋器導(dǎo)入的模塊列表
#sys.executable#Python解釋程序路徑
#sys.stdin.readline#從標(biāo)準(zhǔn)輸入讀一行,sys.stdout.write("a")屏幕輸出a
importsys#導(dǎo)入sys模塊
dir(sys)#dir()方法查看模塊中可用的方法
print(sys.getdefaultencoding())#獲取系統(tǒng)當(dāng)前編碼,一般默認(rèn)為ascii.
print(sys.platform)#獲取當(dāng)前系統(tǒng)平臺.如:win32、Linux等。
print(sys.argv)#sys.argv變量是一個(gè)包含了命令行參數(shù)的字符串列表
#print(sys.path)
#print(sys.modules.keys())
#print(sys.modules.values())
sys.exit()#一般情況下執(zhí)行到主程序末尾,解釋器自動(dòng)退出,但是如果需要中途退出程序,可以調(diào)用sys.exit函數(shù)
補(bǔ)充:sys模塊的實(shí)例
在如下示例中,主要應(yīng)用了sys模塊中的argv實(shí)現(xiàn)了從程序外部向程序內(nèi)傳遞參數(shù),借助具體的案例讓大家可以對sys模塊使用能有更加深入的了解。
代碼如下:
fromsysimportargv#通過這種導(dǎo)入,直接使用argv
importos
defping(net,start=80,end=85,n=1,w=3):
foriinrange(start,end+1):
ip=net+"."+str(i)
command="ping%s-n%d-w%d"%(ip,n,w)
print(ip,("通","不通")[os.system(command)])#system用1,0表示通與不通,1不通,0通
#示例輸入
iflen(argv)notin[2,4,6]:
print("參數(shù)輸入錯(cuò)誤!")
print("1.py111.202.98")
print("1.py111.202.987080")
print("1.py111.202.98708015")
eliflen(argv)==2:
net=argv[1]
p
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 房屋預(yù)售合同(6篇)
- 供應(yīng)商采購合同(7篇)
- 有關(guān)2025年應(yīng)急管理培訓(xùn)心得體會(9篇)
- 高效學(xué)習(xí)公路工程考試要素試題及答案
- 二手房屋買賣合同模板(16篇)
- 深入弘揚(yáng)數(shù)據(jù)庫知識的實(shí)踐精神試題及答案
- 領(lǐng)導(dǎo)者如何管理跨文化團(tuán)隊(duì)試題及答案
- 行政組織理論考試特點(diǎn)的試題及答案
- 歷史文化常識模擬試題集
- 租賃物業(yè)長期使用權(quán)轉(zhuǎn)讓合同
- 21CJ103-1玻璃纖維增強(qiáng)聚酯(FRP)板材應(yīng)用構(gòu)造(一) 采光帶、通風(fēng)、消防排煙天窗及防腐板
- 農(nóng)村污水處理設(shè)施運(yùn)維方案服務(wù)承諾及質(zhì)量保證
- (高清版)DZT 0130.2-2006 地質(zhì)礦產(chǎn)實(shí)驗(yàn)室測試質(zhì)量管理規(guī)范 第2部分:巖石礦物分析試樣制備
- 2024山西杏花村汾酒集團(tuán)有限責(zé)任公司人才招聘筆試參考題庫附帶答案詳解
- 油田安全工作述職報(bào)告
- 人教版小學(xué)四年級下冊《生命.生態(tài).安全》教案
- 倉庫安全 清潔點(diǎn)檢記錄表
- 網(wǎng)絡(luò)數(shù)據(jù)庫安全外文文獻(xiàn)翻譯
- 2023中考數(shù)學(xué)練習(xí) 08 圓與幾何綜合問題(學(xué)生版+解析版)
- 讀后續(xù)寫:三大出彩收尾設(shè)計(jì)(解析版)2023年新高考英語讀后續(xù)寫練習(xí)
- 合伙人協(xié)議書的財(cái)務(wù)透明
評論
0/150
提交評論