1. 程式人生 > >簡單寫一下模塊的導入

簡單寫一下模塊的導入

擴展 推薦 模塊名 情況 當我 知識 一次 內存 main

根據我所學到的知識,python 當中先是def 定義一個函數 如果這個文件當中定義的函數多了 之後 別的文件要用到 a文件當中的函數 就可以導入 a文件 然後 a.函數名字 就可以調用這個函數了。省時省力

比如說:re time os sys 等等模塊就是這樣使用的。可以把函數當中工具來看,而模塊就相當於裝著這些工具的工具箱!

接著寫關於 模塊的導入

首先 導入模塊的規矩: 一定要把導入模塊 放在文件的最上方,因為醒目,方便他人知道你使用了那些模塊。 首先導入的是 python 帶的模塊 第二導入的是 擴展模塊 比如需要pip 下載的模塊就是。 第三個導入的就是自己寫的模塊。

導入模塊只用導入一次就好了,多次導入是不管用的。因為模塊有 sys.modules.keys() 調用模塊時,會首先自檢是否已經調用了本模塊。

那麽導入的方法是多樣的。 首先是 import 模塊名字 那麽使用的時候就是 模塊名.函數名字() 註意假如模塊當中的函數調用了模塊當中的變量,那麽不管本地是否有一樣名字的變量,都不會使用。

import 模塊名 as 自己起的名字 也有這樣的情況 一方面是解決名字太長 輸入問題。更重要的是可以 把多個模塊的名字 命名成一個名字 提高了你寫的代碼的兼容性

form 模塊名字 import 函數名 這種導入的方法好處是 :假如你導入的模塊裏面有一萬個函數名 大大的占用了內存空間 我這樣導入 只導入我需要的函數 當然 這個函數也就在我的命名空間當中了

假如我目前的文件有一個重名的函數名 那麽導入的模塊是不管用的 。

form 模塊名 import * 這種導入方法是講模塊當中所有的函數名字都導入到本文件當中,占用空間。不推薦使用。

from 模塊名 import * 和__all__[‘函數名字‘,‘變量名字’ ] 是一對 如果模塊內沒有 all 那麽 * 會導入所有的名字

如果有了all 那麽只會導入 all 列表當中的名字

附加知識:

寫好的一個模塊 如果想要在本文件當中使用某個功能,而不想讓調用的文件使用 可以使用

__name__ == ‘__main__‘ 方法來判斷。

因為命名空間的規則 本模塊本文件運行 名字統稱為:‘__main__’ 有了這一點 那麽就可以做判斷 !!!!!

# __name__
# 在模塊中 有一個變量__name__,
# 當我們直接執行這個模塊的時候,__name__ == ‘__main__‘
# 當我們執行其他模塊,在其他模塊中引用這個模塊的時候,這個模塊中的__name__ == ‘模塊的名字‘

簡單寫一下模塊的導入