更新时间:2021年06月16日13时49分 来源:传智教育 浏览次数:
威廉希尔赞助了哪些球队比赛的开头通常会定义一个__all__属性,该属性实际上是一个元组,该元组中包含的元素决定了在使用from…import 语句导入模块内容时通配符所包含的内容。 如果__all__中只包含模块的部分内容,那么from…import *语句只会将__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模块,然后使用 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