本篇文章為大家展示了python的sys模塊如何使用,代碼簡(jiǎn)明扼要并且容易理解,絕對(duì)能使你眼前一亮,通過(guò)這篇文章的詳細(xì)介紹希望你能有所收獲。
創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括獨(dú)山子網(wǎng)站建設(shè)、獨(dú)山子網(wǎng)站制作、獨(dú)山子網(wǎng)頁(yè)制作以及獨(dú)山子網(wǎng)絡(luò)營(yíng)銷(xiāo)策劃等。多年來(lái),我們專(zhuān)注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,獨(dú)山子網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶(hù)以成都為中心已經(jīng)輻射到獨(dú)山子省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶(hù)的支持與信任!
當(dāng)前使用的python版本: Python 2.7.6
1: sys是python自帶模塊.
利用 import 語(yǔ)句輸入sys 模塊。
當(dāng)執(zhí)行import sys后, python在 sys.path 變量中所列目錄中尋找 sys 模塊文件。然后運(yùn)行這個(gè)模塊的主塊中的語(yǔ)句進(jìn)行初始化,然后就可以使用模塊了 。
2: sys模塊常見(jiàn)函數(shù)
可以通過(guò)dir()方法查看模塊中可用的方法. 結(jié)果如下, 很多我都沒(méi)有用過(guò), 所以只是簡(jiǎn)單介紹幾個(gè)自己用過(guò)的方法.
$ python Python 2.7.6 (default, Oct 26 2016, 20:30:19) [GCC 4.8.4] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import sys >>> dir(sys) ['__displayhook__', '__doc__', '__excepthook__', '__name__', '__package__', '__stderr__', '__stdin__', '__stdout__', '_clear_type_cache', '_current_frames', '_getframe', '_mercurial', '_multiarch', 'api_version', 'argv', 'builtin_module_names', 'byteorder', 'call_tracing', 'callstats', 'copyright', 'displayhook', 'dont_write_bytecode', 'exc_clear', 'exc_info', 'exc_type', 'excepthook', 'exec_prefix', 'executable', 'exit', 'flags', 'float_info', 'float_repr_style', 'getcheckinterval', 'getdefaultencoding', 'getdlopenflags', 'getfilesystemencoding', 'getprofile', 'getrecursionlimit', 'getrefcount', 'getsizeof', 'gettrace', 'hexversion', 'long_info', 'maxint', 'maxsize', 'maxunicode', 'meta_path', 'modules', 'path', 'path_hooks', 'path_importer_cache', 'platform', 'prefix', 'ps1', 'ps2', 'py3kwarning', 'pydebug', 'setcheckinterval', 'setdlopenflags', 'setprofile', 'setrecursionlimit', 'settrace', 'stderr', 'stdin', 'stdout', 'subversion', 'version', 'version_info', 'warnoptions']
(1) sys.argv 實(shí)現(xiàn)從程序外部向程序傳遞參數(shù)
sys.argv 變量是一個(gè)包含了命令行參數(shù)的字符串列表, 利用命令行想程序傳遞參數(shù). 其中,腳本的名稱(chēng)總是 sys.argv 列表的第一個(gè)參數(shù)。
(2) sys.path 包含輸入模塊的目錄名列表。
獲取指定模塊搜索路徑的字符串集合,可以將寫(xiě)好的模塊放在得到的某個(gè)路徑下,就可以在程序中import時(shí)正確找到。在import導(dǎo)入module_name時(shí),就是根據(jù)sys.path的路徑來(lái)搜索module.name,也可以自定義添加模塊路徑。
sys.path.append(“自定義模塊路徑”)
python學(xué)習(xí)網(wǎng),大量的免費(fèi)python學(xué)習(xí)視頻,歡迎在線(xiàn)學(xué)習(xí)!
(3) sys.exit([arg]) 程序中間的退出, arg=0為正常退出
一般情況下執(zhí)行到主程序末尾,解釋器自動(dòng)退出,但是如果需要中途退出程序,可以調(diào)用sys.exit函數(shù),帶有一個(gè)可選的整數(shù)參數(shù)返回給調(diào)用它的程序,表示你可以在主程序中捕獲對(duì)sys.exit的調(diào)用。(0是正常退出,其他為異常)當(dāng)然也可以用字符串參數(shù),表示錯(cuò)誤不成功的報(bào)錯(cuò)信息。
(4) sys.modules
sys.modules是一個(gè)全局字典,該字典是python啟動(dòng)后就加載在內(nèi)存中。每當(dāng)程序員導(dǎo)入新的模塊,sys.modules將自動(dòng)記錄該模塊。當(dāng)?shù)诙卧賹?dǎo)入該模塊時(shí),python會(huì)直接到字典中查找,從而加快了程序運(yùn)行的速度。它擁有字典所擁有的一切方法.
(5) sys.getdefaultencoding() / sys.setdefaultencoding() / sys.getfilesystemencoding()
sys.getdefaultencoding()
獲取系統(tǒng)當(dāng)前編碼,一般默認(rèn)為ascii。
sys.setdefaultencoding()
設(shè)置系統(tǒng)默認(rèn)編碼,執(zhí)行dir(sys)時(shí)不會(huì)看到這個(gè)方法,在解釋器中執(zhí)行不通過(guò),可以先執(zhí)行reload(sys),在執(zhí)行 setdefaultencoding(‘utf8’),此時(shí)將系統(tǒng)默認(rèn)編碼設(shè)置為utf8。(見(jiàn)設(shè)置系統(tǒng)默認(rèn)編碼 )
sys.getfilesystemencoding()
獲取文件系統(tǒng)使用編碼方式,Windows下返回’mbcs’,mac下返回’utf-8’
(6) sys.stdin, sys.stdout, sys.stderr
stdin , stdout , 以及stderr 變量包含與標(biāo)準(zhǔn)I/O 流對(duì)應(yīng)的流對(duì)象. 如果需要更好地控制輸出,而print 不能滿(mǎn)足你的要求, 它們就是你所需要的. 你也可以替換它們, 這時(shí)候你就可以重定向輸出和輸入到其它設(shè)備( device ), 或者以非標(biāo)準(zhǔn)的方式處理它們.
(7) sys.platform
獲取當(dāng)前系統(tǒng)平臺(tái). 如:win32、Linux等。
上述內(nèi)容就是python的sys模塊如何使用,你們學(xué)到知識(shí)或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識(shí)儲(chǔ)備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
本文名稱(chēng):python的sys模塊如何使用
URL標(biāo)題:http://jinyejixie.com/article48/ijciep.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁(yè)設(shè)計(jì)公司、外貿(mào)網(wǎng)站建設(shè)、域名注冊(cè)、網(wǎng)站改版、響應(yīng)式網(wǎng)站、網(wǎng)站導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)