AG百家乐有规律吗
你的位置:AG百家乐有规律吗 > ag平台真人百家乐 > ag平台真人百家乐
ag真人百家乐怎么赢 为什么要写__name__ 是 "__main__"?
发布日期:2024-04-15 23:18 点击次数:183
不知谈全球有莫得频繁在Python代码中看到这么一个条目判断语句:
if __name__ == '__main__': ... ... ...
也有许多小伙伴也对这个语句示意钦慕。
明明不错径直推行代码,为什么还要多写一个if __name__ == '__main__':?
那么我先来解说一下什么是__name__ 是什么?
__name__是什么?
__name__ 是 Python 中的一个内置变量,它的值取决于代码的开动模式。
若是你径直开动一个Python文献(比如 script.py)。
Python 会将这个文献的 __name__ 成就为 "main"。
若是这个文献被算作模块导入到另一个文献中(使用 import script 语句),那么 __name__ 的值会被成就为该模块的称呼(举例 "script"),而不是 "__main__"了。
为什么用 if __name__== '__main__' ?
这个条目语句的作用是辩认代码是径直开动如故被导入时推行的行动。
具体来说:当你径直开动文献时,__name__ == '__main__' 拓荒,条目块中的代码会被推行。
当文献被导入为模块时,__name__ 不就是 "__main__",玩ag百家乐技巧条目块中的代码不会自动推行。
这不错幸免在导入模块时不测开动某些只应该在主时势中推行的代码(比如测试代码、启动函数等)。
举一个例子
假定咱们有一个文献 script.py:
def say_hello: print("Hello, world!")print("这段代码老是会开动")if __name__ == '__main__': say_hello
径直开动 script.py 输出:
这段代码老是会开动Hello, world!
因为 __name__ 是 "__main__",say_hello 被调用。
咱们再导入到另一个文献(比如在 main.py 中写 import script) 输出:
这段代码老是会开动
因为 __name__ 是 "example",是以say_hello 此时不会被调用。
内容用途
模块化打算
将代码写成模块时,if __name__ == '__main__': 不错用来放测试代码或启动逻辑,幸免导入时无谓要的推行。
显豁的主进口
它明确指定了时势的进口点,便于调试和爱慕。
临了
粗陋来说,if __name__ == '__main__' 是 Python 中一个优雅的模式。
他不错用来确保某些代码只在文献径直开动时推行ag真人百家乐怎么赢,而不会在导入时产生反作用。