Python培訓教程分享:Python模組如何匯入__all__屬性?

千鋒教育qyf發表於2021-11-16

  本期小編為大家帶來的 Python培訓教程是關於“Python模組如何匯入__all__屬性?”的內容,後面在工作中是會遇到Python模組這個工作內容的,Python模組的開頭通常會定義一個__all__屬性,該屬性實際上是一個元組,該元組中包含的元素決定了在使用from…import 語句匯入模組內容時萬用字元所包含的內容。 如果__all__中只包含模組的部分內容,那麼from…import *語句只會將__all__中包含的部分內容匯入程式。

src=http___situedu

  Python培訓教程分享:Python模組如何匯入__all__屬性?假設當前有一個自定義模組calc.py,該模組中包含計算兩個數的四則運算函式,具體程式碼如下:

  def add(a, b):

  return a + b

  def subtract(a, b):

  return a - b

  def multiply(a, b):

  return a * b

  def divide(a, b):

  if (b):

  return a / b

  else:

  print("error")

  在calc模組中設定__all__屬性為["add", "subtract"],此時其他Python檔案匯入calc模組後,只能使用calc模組中的add()與subtract()函式,示例程式碼如下:

  __all__ = ["add", "subtract"]

  通過“from ...import *”方式匯入calc模組,然後使用

  該模組中的add()函式與subtract()函式,具體如下。

  from calc import *

  print(add(2, 3))

  print(subtract(2, 3))

  執行程式,結果如下所示。

  5

  -1

  下面嘗試使用calc模組的multipty()和divide()函式,具體程式碼如下.

  print(multipty(2, 3))

  print(divide(2, 3))

  執行程式,出現如下所示的異常資訊:

  NameError: name 'multiply' is not defined


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69996644/viewspace-2842514/,如需轉載,請註明出處,否則將追究法律責任。

相關文章