ITPub博客

首页 > 应用开发 > Python > Python培训教程分享:Python模块如何导入__all__属性?

Python培训教程分享:Python模块如何导入__all__属性?

原创 Python 作者:千锋教育qyf 时间:2021-11-16 17:59:02 0 删除 编辑

  本期小编为大家带来的 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博客 ” ,链接:https://blog.itpub.net/69996644/viewspace-2842514/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
千锋教育隶属于北京千锋互联科技有限公司,以“初心至善,匠心育人”为核心价值观,致力于打造职业教育全产业链人才服务平台,公司总部位于北京,拥有全国一体化就业保障服务,成为学员信赖的职业教育品牌。 每年有数百万名学员受益于千锋组织的技术研讨会、技术培训课、网络公开课及免费教学视频。

注册时间:2021-03-17

  • 博文量
    527
  • 访问量
    204712