萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> 編程語言綜合 >> Python創建模塊及模塊導入的方法

Python創建模塊及模塊導入的方法

   本文實例講述了Python創建模塊及模塊導入的方法。分享給大家供大家參考。具體分析如下:

  python學習手冊中寫道:

  定義模塊,只要使用文本編輯器,把一些python代碼輸入到文本中,然後以.py為後綴名進行保存,任何此類文件都會被認為是python模塊。

  比如說,下面的代碼輸入到一個文件中,就可以看作是一個模塊:

  ?

1 2 3 4 def printme(var): print var if __name__ == '__main__': printme(1)

  假設說輸入到a.py中,那麼import a就可以把這個模塊導入。

  然後可執行a.printme(3),屏幕即可打印出3:

  ?

1 2 3 >>> a.printme(3) 3 >>>

  一個模塊頂層定義的變量,會自動變成模塊的屬性。例如:

  ?

1 2 3 4 5 data=[1,2,3] def printme(var): print var if __name__ == '__main__': printme(1)

  data變量就是模塊的一個屬性。其實printme也是一個屬性,只不過是一個函數罷了。

  引入模塊示例如下:(假定此時data=[1,2,3]未定義)

  ?

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 >>> import a >>> a.data   Traceback (most recent call last): File "<pyshell#1>", line 1, in <module> a.data AttributeError: 'module' object has no attribute 'data' >>> reload(a) <module 'a' from 'C:/pya.pyc'> >>> a.data   Traceback (most recent call last): File "<pyshell#3>", line 1, in <module> a.data AttributeError: 'module' object has no attribute 'data' >>>

  從上述提示可以看出data屬性未定義,此時再在a.py文件中定義data=[1,2,3],重新加載a模塊,並輸出data屬性:

  ?

1 2 3 4 5 >>> reload(a) <module 'a' from 'C:/pya.py'> >>> a.data [1, 2, 3] >>>

  這裡的reload函數可以重新加載一個模塊。如果在模塊代碼中更改了,那麼需要重新加載。

  上面a.data,就是訪問模塊中的屬性。

  上面的例子是導入一個文件作為一個模塊。

  其實python的模塊導入還有更豐富的內容。

  除了模塊名之外,python也可以導入指定目錄路徑。python代碼的目錄就稱為包。因此,這類導入就稱為包導入。事實上,包導入是把計算機上的目錄變成python的一個命名空間。而屬性就是目錄中包含的子目錄或者是模塊文件。

  看下面例子:

  在我的桌面上有一個aa文件夾,裡面有bb文件夾,bb裡面有a.py這個文件。

  那麼在aa和bb文件夾中分別放置一個__init__.py,之後,在命令行中import aa.bb.a,就可以導入模塊a了。

  希望本文所述對大家的Python程序設計有所幫助。

copyright © 萬盛學電腦網 all rights reserved