您好,登錄后才能下訂單哦!
引言:Python標準庫內容非常多,有人專門為此寫過一本書。本文將選擇幾個呈現出來,一來顯示標準庫之強大功能,二來演示如何理解和使用標準庫。sys是常用的標準庫,已經不陌生了;copy也是已經用過的標準庫。先從熟悉的入手,容易理解,這也是“殺熟”。
本文選自《跟老齊學Python:輕松入門》。
這是一個跟Python解釋器關系密切的標準庫,前面已經使用過:sys.path.append()。
顯示了sys的基本文檔,第一句話概括了本模塊的基本特點。
在諸多sys函數和屬性中,下面選擇常用的來說明。
sys.argv是專門用來向Python解釋器傳遞參數的,所以稱為“命令行參數”。
先解釋什么是命令行參數。
這里的--version就是命令行參數。如果使用python –help,則可以看到更多:
這里只顯示了部分內容,所看到的如-B、-h都是參數,比如python -h,其功能同上。所以,-h也是命令行參數。
sys.arg的作用就是通過它向解釋器傳遞命令行參數。比如:
將上述代碼保存,文件名是22101.py。然后如此操作:
將結果和前面的代碼做個對比。
在$ python sys_file.py中,“sys_file.py”是要運行的文件名,同時也是命令行參數,是前面的python這個指令的參數,其地位與python-h中的參數-h是等同的。
sys.argv[0]是第一個參數,就是上面提到的sys_file.py,即文件名。
如果這樣來試試:
在這里用sys.argv [1]得到的就是beginner,依次類推。
這個方法的作用是退出當前程序。
從文檔信息中可知,如果用sys.exit()退出程序,就會返回SystemExit異常。這里先告知讀者,還有另外一種退出方式,即os._exit(),這兩者有所區別。
這段程序的運行結果如下:
在大多數函數中會用到return,其含義是終止當前的函數,并向調用函數的位置返回相應值(如果沒有就返回None)。但是sys.exit()的含義是退出當前程序(不僅僅是退出當前函數),并發起SystemExit異常。這就是兩者的區別。
如果使用sys.exit(0)表示正常退出,則需要在退出的時候有一個對人友好的提示,可以用sys.exit("I wet out at here."),那么字符串信息就會被打印出來。
sys.path已經不陌生了,它可以查找模塊所在的目錄,以列表的形式顯示出來。如果用append()方法,就能夠向這個列表增加新的模塊目錄,如前所演示,不再贅述。
前面對淺拷貝和深拷貝做了研究,這里再次提出,溫故而知新。
這個模塊中常用的就是copy和deepcopy。
為了具體說明,看這樣一個例子,這個例子跟以前討論淺拷貝和深拷貝時略有不同,請讀者認真推敲結果,并對照代碼。
一切盡在不言中,請讀者認真對照上面的顯示結果,體會深拷貝和淺拷貝的實現方法和含義。
本文選自《跟老齊學Python:輕松入門》,點此鏈接可在博文視點官網查看此書。
想及時獲得更多精彩文章,可在微信中搜索“博文視點”或者掃描下方二維碼并關注。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。