python中main函數的用法


什么場景下會有main函數?

當該python腳本被作為模塊(module)引入(import)時,其中的main()函數將不會被執行。

main函數的作用?

__ name__ == '__ main__'是Python的main函數入口。並非說,加入這句才能使用python xxx.py來執行,而是說,這里可以判斷,當前是否是直接被python直接調用執行。

main為什么只有文件當作執行程序的時候才會被執行呢?

這是由於兩方面原因,一方面,main函數是所有執行程序的入口;另一方面,python的解釋器是順序執行腳本的並且不會調用任何不屬於程序本身的代碼和函數,需要補充說明的一點是,如果是被作為一個模塊或庫import到程序中,則會直接成為代碼的一部分。

參考代碼:

文件:main_function.py

import datetime

print('Hello World!')
print('Time is ', datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S %A'))


def main():
    print('this message is from main function')


if __name__ == '__main__':
    main()

執行結果:

➜  main git:(master) ✗ py main_function.py
Hello World!
Time is  2019-07-22 09:50:50 Monday
this message is from main function

文件二:test_main.py

import main_function

print("Done!")

執行結果:

➜  main git:(master) ✗ py test_main.py
Hello World!
Time is  2019-07-22 09:52:00 Monday
Done!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM