1. 程式人生 > >模塊與包的導入

模塊與包的導入

change cnblogs 名稱空間 pytho 添加 class light brush 註意

同級目錄導入模塊直接導入,一個py文件就是一個模塊 #導入模塊的方法: 
1、import 模塊名1,模塊名2 #註意只是模塊名,不藥寫。py等後綴
2、import 模塊名 as 別名
3、from 模塊名 import 函數名
4、from 模塊名 import * 跟__all__ = [‘money‘,‘read1‘]結合使用 ‘‘‘

1、import直接導入模塊名
import導入模塊幹的事 1、產生新的名稱空間 2、在新建的名稱空間為全局名稱空間,執行文件的代碼 3、拿到一個模塊名,指向spam.py 
def read1():
    print(‘from test.py‘)

spam.read1()   #apam -> read1-> money 1000  打印的是spam模塊中的read1

money = 50
print(money)   #  50
print(spam.money)  #1000
spam.change()    #global改變
print(spam.money)  # 0
2、from  模塊名 import 函數或變量名    
幹的事 1、產生新的名稱空間 2、在新建的名稱空間為全局名稱空間,執行文件的代碼 3、直接拿到模塊產生的名稱空間中的名字
此種方法優缺點: 優點:方便,不用加前綴;
         缺點:容易跟當前文件的名稱空間沖突 。
from spam import money
money=10
print(money)  #註意:因為這種導入方式在用時不能用模塊名.變量名的方式指定用哪個,在導入後,又重新給money函數新的指向,所以這裏結果是 10

from spam import *  #調用時不寫spam.又可以一下子全部導入,可以在源文件中任意位置添加__all__ = [‘money‘,‘read1‘]   來控制可以導入那些東西

  



模塊與包的導入