亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Python編程之順序執(zhí)行與程序的主入口詳解

 更新時(shí)間:2022年12月22日 10:39:11   作者:網(wǎng)絡(luò)豆  
程序從程序入口進(jìn)入,到程序執(zhí)行結(jié)束,大體是按照順序結(jié)構(gòu)執(zhí)行語(yǔ)句、函數(shù)或代碼塊,掌握程序的結(jié)構(gòu),有利于把握程序的主體框架,下面這篇文章主要給大家介紹了關(guān)于Python編程之順序執(zhí)行與程序的主入口的相關(guān)資料,需要的朋友可以參考下

前言

本章將會(huì)講解Python編程中的順序執(zhí)行與程序的主入口。

1.順序執(zhí)行(了解)

Python代碼在執(zhí)行過(guò)程中,遵循下面的基本原則:

  1. 普通語(yǔ)句,直接執(zhí)行;
  2. 碰到函數(shù),將函數(shù)體載入內(nèi)存,并不直接執(zhí)行
  3. 碰到類,執(zhí)行類內(nèi)部的普通語(yǔ)句,但是類的方法只載入,不執(zhí)行
  4. 碰到if、for等控制語(yǔ)句,按相應(yīng)控制流程執(zhí)行
  5. 碰到@,break,continue等,按規(guī)定語(yǔ)法執(zhí)行
  6. 碰到函數(shù)、方法調(diào)用等,轉(zhuǎn)而執(zhí)行函數(shù)內(nèi)部代碼,執(zhí)行完畢繼續(xù)執(zhí)行原有順序代碼
# #對(duì)于普通語(yǔ)句,代碼從上之下執(zhí)行
# print("hello world")
# print("hello world")
# print("hello world")
 
 
#此時(shí)代碼從上之下執(zhí)行,但是函數(shù)只有在調(diào)用時(shí)才會(huì)執(zhí)行
 
# def func_name():
#     print("i  am  func name")
# func_name()
 
# class MyClass:
#     print("i am myclass")
# 
#     def my_text(self):
#         print("i am mytest ")
# 
# 
# d = MyClass()
# d.my_test()

2.程序主入口(熟悉)

一個(gè) .py,除了可以被直接運(yùn)行外,還可以作為模塊, 被其他 .py文件導(dǎo)入。不管是直接運(yùn)行還是被導(dǎo) 入,.py 文件的最頂層代碼都會(huì)被運(yùn)行( Python 用縮 進(jìn)來(lái)區(qū)分代碼層次)。 但是當(dāng)一個(gè) .py 文件作為模塊被導(dǎo)入時(shí),我們可能不 希望一部分代碼被運(yùn)行。那么就可以將這部分代碼的 調(diào)用寫在主程序中。

def func_one():
    print("func_one")
 
def func_two():
    print("func_two")
 
func_one()
 
#程序的主入口
if __name__ == '__main__':
    func_two()
#當(dāng)我導(dǎo)入了demo19之后,運(yùn)行demo13的話,會(huì)執(zhí)行demo3內(nèi)部的代碼
import demo19
#執(zhí)行demo4,竟然只打印輸出了func_one

再來(lái)解釋下

所以上面代碼 if 的意思就是:如果運(yùn)行的程序是你自己,那么就 print....

假設(shè)運(yùn)行的是 xiaoming.py,那么就會(huì)執(zhí)行主函數(shù)

假設(shè)運(yùn)行的是 xiaohong.py,即使 xiaohong 導(dǎo)入了 xiaoming,也不會(huì)執(zhí)行 xiaoming.py 里面的主函數(shù)(main 函數(shù))

是否一定需要執(zhí)行入口(主函數(shù))

不一定

假設(shè)沒(méi)有主函數(shù),那么運(yùn)行 xiaoming.py 時(shí),就會(huì)至上而下,逐行運(yùn)行 xiaoming.py 的所有代碼

執(zhí)行入口的意義

將業(yè)務(wù)代碼寫在主函數(shù)上面,主函數(shù)用來(lái)調(diào)用有業(yè)務(wù)代碼,代碼結(jié)構(gòu)整潔
向 Java、C、Golang 看齊,他們都是要求一個(gè)程序必須有一個(gè)主執(zhí)行入口才能正確運(yùn)行

總結(jié)

到此這篇關(guān)于Python編程之順序執(zhí)行與程序的主入口的文章就介紹到這了,更多相關(guān)Python順序執(zhí)行與程序主入口內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 使用Python實(shí)現(xiàn)with結(jié)構(gòu)的@contextmanager方法詳解

    使用Python實(shí)現(xiàn)with結(jié)構(gòu)的@contextmanager方法詳解

    這篇文章主要介紹了使用Python實(shí)現(xiàn)with結(jié)構(gòu)的@contextmanager方法詳解,這個(gè)結(jié)構(gòu)的好處,一個(gè)是簡(jiǎn)潔,一個(gè)是當(dāng)我們對(duì)文件操作的邏輯很長(zhǎng)的時(shí)候,不會(huì)因?yàn)橥岁P(guān)閉文件而造成不必要的錯(cuò)誤,需要的朋友可以參考下
    2023-07-07
  • python時(shí)間日期操作方法實(shí)例小結(jié)

    python時(shí)間日期操作方法實(shí)例小結(jié)

    這篇文章主要介紹了python時(shí)間日期操作方法,結(jié)合實(shí)例形式總結(jié)分析了Python針對(duì)日期時(shí)間的轉(zhuǎn)換、計(jì)算相關(guān)操作技巧,需要的朋友可以參考下
    2020-02-02
  • 使用numpy nonzero 找出非0元素

    使用numpy nonzero 找出非0元素

    這篇文章主要介紹了使用numpy nonzero 找出非0元素的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-05-05
  • Pandas中DataFrame的常用用法分享

    Pandas中DataFrame的常用用法分享

    Pandas是Python中最流行的數(shù)據(jù)分析和處理工具之一,它提供了一個(gè)名為DataFrame的數(shù)據(jù)結(jié)構(gòu),可以被認(rèn)為是一個(gè)二維表格或電子表格。本文主要來(lái)和大家分享一下Pandas中DataFrame的常用用法,希望對(duì)大家有所幫助
    2023-04-04
  • pandas中的Timestamp只保留日期不顯示時(shí)間

    pandas中的Timestamp只保留日期不顯示時(shí)間

    這篇文章主要介紹了pandas中的Timestamp只保留日期不顯示時(shí)間,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • python基于OpenCV模塊實(shí)現(xiàn)視頻流數(shù)據(jù)切割為圖像幀數(shù)據(jù)(流程分析)

    python基于OpenCV模塊實(shí)現(xiàn)視頻流數(shù)據(jù)切割為圖像幀數(shù)據(jù)(流程分析)

    這篇文章主要介紹了python基于OpenCV模塊實(shí)現(xiàn)視頻流數(shù)據(jù)切割為圖像幀數(shù)據(jù),這里今天主要是實(shí)踐一下視頻流數(shù)據(jù)的預(yù)處理工作,需要的朋友可以參考下
    2022-05-05
  • 淺談django url請(qǐng)求與數(shù)據(jù)庫(kù)連接池的共享問(wèn)題

    淺談django url請(qǐng)求與數(shù)據(jù)庫(kù)連接池的共享問(wèn)題

    今天小編就為大家分享一篇淺談django url請(qǐng)求與數(shù)據(jù)庫(kù)連接池的共享問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-08-08
  • caffe的python接口生成配置文件學(xué)習(xí)

    caffe的python接口生成配置文件學(xué)習(xí)

    這篇文章主要介紹了caffe的python接口生成配置文件學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • 使用python實(shí)現(xiàn)excel的Vlookup功能

    使用python實(shí)現(xiàn)excel的Vlookup功能

    這篇文章主要介紹了使用python實(shí)現(xiàn)excel的Vlookup功能,當(dāng)我們想要查找的數(shù)據(jù)量較大時(shí),這時(shí)則有請(qǐng)我們的主角VLookup函數(shù)出場(chǎng),那么如何用python實(shí)現(xiàn)VLookup呢,需要的朋友可以參考下
    2023-04-04
  • 手把手教你在Pycharm中新建虛擬環(huán)境并使用(超詳細(xì)!)

    手把手教你在Pycharm中新建虛擬環(huán)境并使用(超詳細(xì)!)

    使用python開發(fā)項(xiàng)目通常都會(huì)創(chuàng)建一個(gè)虛擬環(huán)境,將項(xiàng)目依賴包安裝到虛擬環(huán)境中,避免一臺(tái)電腦上開發(fā)多個(gè)項(xiàng)目時(shí)依賴包版本號(hào)不兼容造成沖突,下面這篇文章主要給大家介紹了關(guān)于如何在Pycharm中新建虛擬環(huán)境并使用的相關(guān)資料,需要的朋友可以參考下
    2022-06-06

最新評(píng)論