python中自带的模块_python中的模块详解
概念
python中的模塊是什么?簡而言之,在python中,一個文件(以“.py”為后綴名的文件)就叫做一個模塊,每一個模塊在python里都被看做是一個獨立的文件。模塊可以被項目中的其他模塊、一些腳本甚至是交互式的解析器所使用,它可以被其他程序引用,從而使用該模塊里的函數等功能,使用Python中的標準庫也是采用這種方法。
分類
在Python中模塊分為以下幾種:
系統內置模塊,例如:sys、time、json模塊等等;自定義模塊,自定義模塊是自己寫的模塊,對某段邏輯或某些函數進行封裝后供其他函數調用。注意:自定義模塊的命名一定不能和系統內置的模塊重名了,否則將不能再導入系統的內置模塊了。例如:自定義了一個sys.py模塊后,再想使用系統的sys模塊是不能使用的;第三方的開源模塊:這部分模塊可以通過pip install進行安裝,有開源的代碼;
使用模塊
我們先來看一個例子,導入系統內置的sys模塊:
在第二行處,寫了這樣一句話:“import sys”,表示使用系統自帶的sys模塊,因此,在下面的代碼里,就可以使用sys模塊里的函數:“sys.argv”,它的作用是返回命令行的參數列表。
使用關鍵詞“import”,后面跟具體的模塊名稱,則可以導入某一個模塊;同一個模塊不管你執行了多少次“import”,只會被導入一次,以防止模塊一遍又一遍的被執行;“import”應該被放在代碼的頂端;
接下來我們導入一個自定義的模塊,首先我們定義一個模塊,并且把這個模塊的名字叫做“myprint.py”,如下圖所示:
這個模塊里定義了一個函數,打印輸入的參數,并且在后面再加上一行自定義打印的文字。將這個文件保存,接下來讓我們看調用方法:
在調用的地方,同樣只需要輸入“import myprint”,然后就可以在任意地方調用了,調用的方法也是一樣,用該模塊的名字.函數名稱(參數)就能達到調用目的。
from...import
剛才我們提到了引入一個模塊使用“import”關鍵詞,它將把這個模塊整個引入進來,那么,from...import則是引入一個指定部分到當前的命名空間中來,例如我們有如下圖所示的一個模塊:
上面的模塊定義了兩個函數,分別是“print_myself”和“print_other”,現在我們用from...import使用這個模塊,并且只想使用第一個函數,如下圖:
從上面的兩個例子,我們可以看到,“import”和“from...import”的作用都是引入一個模塊,它們的區別在于:
“import”是引入一個完整的模塊,“from...import”是引入模塊中的一個或多個指定部分;“import”引入模塊后,如果需要使用模塊里的函數方法,則需要加上模塊的限定名字,“from...import”則不用加模塊的限定名字,直接使用其函數方法;值得一提的是,還有一種引入模塊的方法:“from...import*”,舉例如下圖:
請看,剛才運行時會出錯的地方“print_other”不會出錯了!但是,絕大多數編程人員不會這么寫,因為它一次性的把一個模塊里的所有函數、變量都一次性的引入進來了(單下劃線“_”開頭的名字不在此列),有可能會覆蓋現有代碼的定義;
小結
Python中模塊化的好處多多,總結起來,有如下優點:
提高了代碼的可維護性;一個模塊編寫完畢之后,其他模塊直接調用,不用再從零開始寫代碼了,節約了工作時間;避免函數名稱和變量名稱重復,在不同的模塊中可以存在相同名字的函數名和變量名,但是,切記,不要和系統內置的模塊名稱重復;
總結
以上是生活随笔為你收集整理的python中自带的模块_python中的模块详解的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何维持手机电池寿命_充电小知识:你知道
- 下一篇: python filter函数中写non