首先python能import啥?除了大家都知道的pakage,还能import:
变量
函数
类
>>> from math import sqrt
>>> sqrt(9)
3.0
>>> import math
>>> math.sqrt(9)
3.0
if __name__ == '__main__'
statements
很简单,字面上翻译,如果__name__等于'__main__',执行statement。也就是初学者写代码直接点击run。注意:写在这个if语句里的class,def,和变量都是不能被别的模块(.py文件)import的。另一方面,其他模块调用该模块的class, def, valuable是不会执行if语句里面的代码的。
调用模块时,python解释器其实是执行了模块的所有代码,当if语句不成立时,当然不执行if语句的statement。因为调用该模块时__name__=模块的名字,明显不等于'__main__'。