python入門——python模塊

python大數據課堂已經開始了。想轉行大數據,數據挖掘,機器學習,人工智慧的小夥伴可以關注啦。上一篇帶大家了解了python函數。今天我們來繼續了解python中的模塊。調試環境以python3.6環境為例。需要代碼和demo的朋友可以搜索「欒鵬全棧」到我的CSDN博客。

第七部分. Python模塊

7、Python模塊

Python 模塊(Module),是一個Python 文件,以 .py 結尾,包含了 Python 對象定義和Python語句。

模塊讓你能夠有邏輯地組織你的Python 代碼段。

把相關的代碼分配到一個模塊里能讓你的代碼更好用,更易懂。

7.1、導入模塊的三種方法的區別

1)import導入

Advertisements

2)From … import導入

下面的語句可以將模塊中的某一部分導入,它只會將里這個部分單個引入到執行這個聲明的模塊的全局符號表。這個部分可以是某個函數塊,也可以是函數塊的子函數塊。

3)From … import * 導入

前兩種語句都是導入模塊的部分,只是部分導入的位置不同,而使用From …import*則是導入模塊的全部項目,盡量少用,太耗內存。

7.2、命名空間和作用域

變數是擁有匹配對象的名字(標識符)。

命名空間是一個包含了變數名稱們(鍵)和它們各自相應的對象們(值)的字典。每個函數都會有自己的命名空間,當變數出現在函數內部時,Python默認其為局部變數,若存在一個與局部變數重名的全局變數,則由局部變數覆蓋全局變數。

Advertisements

Python的命名空間分局部命名空間和全局命名空間。

7.3、找出模塊中所有的模塊名、函數名、變數名(dir()函數)

以上實例輸出結果:

7.4、查看全局變數和局部變數命名空間

根據調用地方的不同,globals()和 locals()函數可被用來返回全局和局部命名空間里的名字。

如果在函數內部調用 locals(),返回的是所有能在該函數里訪問的命名。

如果在函數內部調用 globals(),返回的是所有在該函數里能訪問的全局名字。

兩個函數的返回類型都是字典。所以名字們能用 keys() 函數摘取。

7.5、 reload() 函數

當一個模塊被導入到一個腳本,模塊頂層部分的代碼只會被執行一次。

因此,如果你想重新執行模塊里頂層部分的代碼,可以用 reload() 函數。該函數會重新導入之前導入過的模塊。語法如下:在這裡,module_name要直接放模塊的名字,而不是一個字元串形式。

下節預告:python中I/O函數

Advertisements

你可能會喜歡