关于前后双下划线的一道练习题——分苹果
论文问答
1
python书上的一道练习题,后面的
if __name__ == '__main__':
我不太明白,这个前后添加了双下划线的两个量在前文中也没有提到啊,它是什么意思呢?
完整的程序如下:
def division():
'''功能:分苹果'''
apple = int(input("请输入苹果的个数:"))
children = int(input("请输入来了几个小朋友:"))
result = apple // children
remain = apple - result * children
if remain > 0:
print(apple, "个苹果,平均分给", children, "个小朋友,每人分", result, "个,剩下", remain, "个。")
else:
print(apple,"个苹果,平均分给", children, "个小朋友,每人分", result, "个。")
if __name__ == '__main__':
try:
division()
except ZeroDivisionError:
print("\n出错了,苹果不能被0个小朋友分")
except ValueError as e:
print("输入错误:", e)
else:
print("分苹果顺利完成")
-
- name 是模块(.py文件)在创建之初会自动加载一些内建变量;
- 当直接执行模块(.py文件)时, name 的值就是' main ';
- 当引入该模块时, name 的值就是【模块名】;
- 所以if name == ' main ':这个判断就是是不是直接执行的当前模块!
-
这个 name 是python的固有属性来着。‘ main ’是其一个属性值,代表当前这个程序直接运行于本程序而非被调用运行。 你可以把if name =' main '当作是c语言里的 void main(){}
发表回复