最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

關(guān)于Python中的main方法教程

 更新時間:2023年03月28日 14:18:49   作者:Python 學(xué)習(xí)者  
估計很多人跟我一樣初學(xué)python看代碼的時候先找一下main()方法,從main往下看。但事實上python中是沒有你理解中的“main()”方法的,一起來看看吧

正文開始

if name == "main":可以看成是python程序的入口,就像java中的main()方法,但不完全正確。

事實上python程序是從上而下逐行運行的,在.py文件中,除了def后定義函數(shù)外的代碼都會被認為是“main”方法中的內(nèi)容從上而下執(zhí)行。如果只是寫個偉大的"hello world",不想寫函數(shù)的話,僅僅是print(‘hello world’)就可以,這就是一個“程序”,不需要所謂的“main”方法入口。當(dāng)然如果是測試函數(shù)功能就需要在.py文件中寫上if name == "main",再調(diào)用函數(shù)。

比如如下hello.py文件:

print("first")
 
 
def sayHello():
    str = "hello"
    print(str);
    print(__name__+'from hello.sayhello()')
 
 
if __name__ == "__main__":
    print ('This is main of module "hello.py"')
    sayHello()
    print(__name__+'from hello.main')

 運行結(jié)果:

first
This is main of module "hello.py"
hello
__main__ from hello.sayhello()
__main__ from hello.main

懂我意思吧?先執(zhí)行的第一行print再執(zhí)行“入口”中的東西

話說回來,if name == "main"這句話是個什么意思呢?

name__其實是一個內(nèi)置屬性,指示當(dāng)前py文件調(diào)用方式的方法。當(dāng)上述例子運行的時候,整個程序中不管是哪個位置的__name__屬性,值都是__main,當(dāng)這個hello.py文件作為模塊被導(dǎo)入到另一個.py文件中(即import)比如說world.py,并且你運行的是world.py,此時hello.py中的__name__屬性就會變成hello,所謂的入口因為if判斷失敗就不執(zhí)行了

所以if語句的判斷成功虛擬了一個main()方法。

說到了phthon是逐行執(zhí)行的,所以當(dāng)它讀到import hello的時候,也會執(zhí)行hello.py,比如運行如下world.py文件:

import hello#上一個例子的hello.py
 
if __name__ == "__main__":
    print ('This is main of module "world.py"')
    hello.sayHello()
    print(__name__)

執(zhí)行結(jié)果:

first
This is main of module "world.py"
hello
hellofrom hello.sayhello()
main

可以看到hello.py中的第一行print(‘first’)直接被執(zhí)行了,并且hello.py中的__name__輸出的也是hello,world.py中的name輸出的是__main__

總結(jié):

要適應(yīng)python沒有main()方法的特點。所謂的入口其實也就是個if條件語句,判斷成功就執(zhí)行一些代碼,失敗就跳過。沒有java等其他語言中那樣會有特定的內(nèi)置函數(shù)去識別main()方法入口,在main()方法中從上而下執(zhí)行

到此這篇關(guān)于關(guān)于Python中的main方法教程的文章就介紹到這了,更多相關(guān)Python的main方法內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python對XML文件實現(xiàn)增刪改查操作

    Python對XML文件實現(xiàn)增刪改查操作

    這篇文章主要為大家詳細介紹了Python對XML文件進行實現(xiàn)增刪改查操作的方法,文中的示例代碼講解詳細,具有一定的借鑒價值,感興趣的可以了解一下
    2022-11-11
  • python是否適合網(wǎng)頁編程詳解

    python是否適合網(wǎng)頁編程詳解

    在本篇文章里我們給各位整理了一篇關(guān)于python是否適合網(wǎng)頁編程詳解內(nèi)容,有需要的朋友們可以學(xué)習(xí)下。
    2019-10-10
  • 使用Python輕松實現(xiàn)一個簡單的圖床功能

    使用Python輕松實現(xiàn)一個簡單的圖床功能

    在網(wǎng)上分享圖片或?qū)D片嵌入到網(wǎng)頁中時,通常需要一個圖床來存儲和管理這些圖片,所以本文就來為大家介紹一下如何使用Python輕松實現(xiàn)一個簡單的圖床功能吧
    2024-01-01
  • 淺析Python中作用域的應(yīng)用

    淺析Python中作用域的應(yīng)用

    這篇文章主要是想和大家一起來討論下去Python中的命名空間、作用域和LEGB規(guī)則等不同概念,文中的示例代碼簡潔易懂,快跟隨小編一起來學(xué)習(xí)一下吧
    2023-08-08
  • python實現(xiàn)n個數(shù)中選出m個數(shù)的方法

    python實現(xiàn)n個數(shù)中選出m個數(shù)的方法

    今天小編就為大家分享一篇python實現(xiàn)n個數(shù)中選出m個數(shù)的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11
  • Python??Pandas教程之使用?pandas.read_csv()?讀取?csv

    Python??Pandas教程之使用?pandas.read_csv()?讀取?csv

    這篇文章主要介紹了Python Pandas教程之使用pandas.read_csv()讀取csv,文章通過圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-09-09
  • Python內(nèi)置函數(shù)locals和globals對比

    Python內(nèi)置函數(shù)locals和globals對比

    這篇文章主要介紹了Python內(nèi)置函數(shù)locals和globals對比,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-04-04
  • 關(guān)于pandas.DataFrame的類SQL操作

    關(guān)于pandas.DataFrame的類SQL操作

    這篇文章主要介紹了關(guān)于pandas.DataFrame的類SQL操作方式,具有很好的參考價值,希望對大家有所幫助,
    2023-08-08
  • 詳解Python字符串原理與使用的深度總結(jié)

    詳解Python字符串原理與使用的深度總結(jié)

    本文將學(xué)習(xí)字符串?dāng)?shù)據(jù)類型相關(guān)知識,將討論如何聲明字符串?dāng)?shù)據(jù)類型,字符串?dāng)?shù)據(jù)類型與?ASCII?表的關(guān)系,字符串?dāng)?shù)據(jù)類型的屬性,以及一些重要的字符串方法和操作,超級干貨,不容錯過
    2022-05-05
  • 解決Python logging模塊無法正常輸出日志的問題

    解決Python logging模塊無法正常輸出日志的問題

    今天小編就為大家分享一篇解決Python logging模塊無法正常輸出日志的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02

最新評論

绍兴市| 鲜城| 乌兰察布市| 玛纳斯县| 新宁县| 盐亭县| 海阳市| 门头沟区| 分宜县| 宣汉县| 天水市| 天长市| 弋阳县| 昌吉市| 合水县| 岫岩| 昆山市| 德安县| 乌苏市| 深圳市| 察雅县| 广南县| 贞丰县| 云南省| 凤庆县| 万盛区| 永顺县| 济宁市| 乐清市| 鸡泽县| 儋州市| 安陆市| 文成县| 新邵县| 马边| 龙泉市| 镇宁| 石楼县| 福贡县| 常宁市| 大同县|