• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    控制結(jié)構(gòu)與函數(shù)

    2021-11-25 07:28:53葉鵬沈曉恬
    科學24小時 2021年11期
    關鍵詞:老祖菩提悟空

    葉鵬 沈曉恬

    在上一期,菩提老祖?zhèn)魇诹藀ython的基本運算符,但只掌握這些是遠遠不夠的。菩提老祖用拂塵指指悟空,繼續(xù)他的教學工作。

    “如你與人爭斗時一樣,不可能只使用一招基本招式,也不可能每次使用一模一樣的打法。在程序中,也必然要用到一些結(jié)構(gòu),來控制程序如何執(zhí)行各種操作,這種結(jié)構(gòu)稱為控制結(jié)構(gòu)。”

    順序結(jié)構(gòu)

    “我不是很明白,”悟空似懂非懂,眼中露出些許迷茫之色。

    “待我仔細講解一下?!?/p>

    “程序中一般有3種控制結(jié)構(gòu),順序結(jié)構(gòu)、分支結(jié)構(gòu)、循環(huán)結(jié)構(gòu)。順序結(jié)構(gòu)最容易理解,一行行程序按順序執(zhí)行,做完一行,再做下一行。順序結(jié)構(gòu)不需要特別的控制語句?!?/p>

    悟空點頭表示明白。

    “分支結(jié)構(gòu)中,需要加判斷條件,判斷滿足何種條件時做什么事情?!?p>

    分支結(jié)構(gòu)

    “那么,吃桃子的時候,判斷桃毛是否蹭干凈,就是分支結(jié)構(gòu)語句?”悟空問道。

    “不錯!”菩提老祖接著說,“Python中的分支結(jié)構(gòu)語句使用if...elif...else的方法來表達。”

    # 分支結(jié)構(gòu)

    # if

    a = 1

    if a == 1:

    print('此時a等于1')

    # if...else

    a = 2

    if a == 1:

    print('此時a等于1')

    else:

    print('此時a不等于1')

    # if...elif...else

    a = 2

    if a == 1:

    print('此時a等于1')

    elif a == 3:

    print('此時a等于3')

    else:

    print('此時a等于2')

    # if...elif...elif...else

    a = 2

    if a == 1:

    print('此時a等于1')

    elif a == 3:

    print('此時a等于3')

    elif a == 4:

    print('此時a等于4')

    else:

    print('此時a等于2')

    # if嵌套

    a = 2

    b = 5

    if a == 2:

    if b == 3:

    print('此時a等于2,b等于3')

    else:

    print('此時a等于2,b不等于3')

    else:

    print('此時a不等于2')

    如果a等于1,打印此時a等于1。

    如果a等于1,打印此時a等于1;否則打印此時a不等于1。

    如果a等于1,打印此時a等于1;又如果a等于3,打印此時a等于3;否則打印此時a等于2。

    如果a等于1,打印此時a等于1;又如果a等于3,打印此時a等于3;又如果a等于4,打印此時a等

    如果a等于2時:b等于3,打印此時a等于2,b等于3;否則打印此時a等于2,b不等于3。否則(如果a不等于2)打印此時a等于2。

    “簡單!”猴子挺得意。

    “你這猴頭可得看仔細,if或者elif后面跟的表達式里,判斷是否相等時,可得用兩個等號。這是一個比較運算符?!?/p>

    “師父不說我還真沒注意呢!”悟空撓著后腦勺訕笑著。

    “if和elif后的條件表達式如果成立,則會執(zhí)行此分支程序;如果不成立,則不會;如果所有條件都不成立,則會進入else分支?!?/p>

    “第三種控制結(jié)構(gòu)稱為循環(huán)結(jié)構(gòu),如果同樣的操作被反復執(zhí)行,便可以使用循環(huán)結(jié)構(gòu)?!逼刑崂献胬^續(xù)講解。

    循環(huán)結(jié)構(gòu)

    “師父,這俺就不明白了,既然同樣的操作被反復執(zhí)行,為什么不把同樣的代碼多寫幾遍,反正也不費事?!蔽蚩瞻l(fā)問。

    菩提老祖一笑:“寫程序時可不一定知道要執(zhí)行幾次,萬一要執(zhí)行個千百次,你還真在程序中抄那么多次?而且使用循環(huán)結(jié)構(gòu),你可以動態(tài)地控制循環(huán)的次數(shù)?!?/p>

    “此話怎講?”猴子問。

    “比如一段吃桃子的程序,有一筐桃子,你要用程序把它吃完。如果寫程序的時候,已經(jīng)規(guī)定能吃的桃子個數(shù),那么筐里的桃子多了你會吃不完,少了你又不夠吃。只有在程序開始運行之后,根據(jù)筐里桃子的數(shù)量來決定吃幾個桃子,才會剛剛好?!?/p>

    “哦!”猴子大徹大悟,“要是現(xiàn)在有一筐桃子就太好了!”

    在Python中,循環(huán)結(jié)構(gòu)大致可以分成兩種,一種是遍歷循環(huán),一種是無限循環(huán)。

    所謂遍歷循環(huán)就是遍歷某一個結(jié)構(gòu)形成的循環(huán)運行方式。具體說來,比如有一個列表,里面包含了1~20的數(shù)字,基于這個列表進行的遍歷循環(huán),就會執(zhí)行20次。

    無限循環(huán)是由條件控制的循環(huán)方式,反復執(zhí)行代碼,一直到不滿足循環(huán)條件為止。

    以猴子吃桃子的故事來舉例,遍歷循環(huán)就是先看看筐里有幾個桃子,挨個兒拿出來吃。無限循環(huán)就是看看筐里還有沒有桃子,有就拿出來吃,沒有就停止循環(huán)。

    遍歷循環(huán)的語法使用for...in...,無限循環(huán)的語法使用while。

    [list1 = [1,2,"a"]

    for i in list1:

    print(i) ]

    [i = 0

    while i<3:

    print(i)

    i = i + 1 ]

    Python中for和while并沒有本質(zhì)的區(qū)別,只是實際使用中針對性不同。

    如果執(zhí)行過程中要退出循環(huán),可以使用break和continue語句。break會退出整個循環(huán)部分代碼,continue則會跳過當前這次執(zhí)行的代碼,繼續(xù)下一次循環(huán)。

    break:

    [i=0

    while i<5:

    i=i+1

    if i%2==0:

    print("把它吃掉!")

    break

    print("擦擦桃子,") ]

    continue:

    [i=0

    while i<5:

    i=i+1

    if i%2==0:

    print("把它吃掉!")

    continue

    print("擦擦桃子,") ]

    說到這里,性急的猴子覺得自己已經(jīng)掌握了Python的基本用法,迫不及待地想要試試手。

    菩提老祖怎會不知道這猴子的心思,不過還有點重要的東西沒有講完。

    “悟空,想要成為高手,光是上面講的內(nèi)容還不夠?!?/p>

    這話吊起了猴子的好勝心?!芭叮窟€有什么?”

    “所謂高手,都有自己的絕招,這絕招通常是由一串基本招式構(gòu)成,高手們將其練熟,在某些特定場合一并使出。你當年不是有一招叫做“萬棍朝宗”嗎?在瞬間揮出一萬棍,打擊在一個點上?!?/p>

    “嗯,師父講的沒錯!Python中也有這樣的絕招嗎?”

    “Python中有個東西叫作函數(shù),這就相當于絕招?!逼刑崂献娼又f道,“函數(shù)是組織好的,可重復使用,用來實現(xiàn)單一或相關聯(lián)功能的代碼段?!?/p>

    “明白,函數(shù)就是帶名字的代碼塊。好比俺老孫平時練熟一串招式,這就是一個代碼塊,俺給它起個名字叫萬棍朝宗,就是函數(shù)名了。等對敵時候,俺大喝一聲,把這大招使出來,這就是調(diào)用函數(shù)!”悟空又興奮起來。

    “孺子可教也?!逼刑崂献婺眄毼⑿?。

    Python使用def語法來定義函數(shù)。其中可以沒有參數(shù)和返回值。函數(shù)名的要求和變量名的要求一樣,首字以字母和下劃線開頭,后續(xù)由中英文字母、下劃線和數(shù)字組成,大小寫敏感。

    [def 函數(shù)名 (參數(shù)):

    功能代碼

    return 返回值 ]

    下面是一個函數(shù)的簡單例子:

    [def wangunchaozong(t):

    for i in range(t):

    print("打一棍")

    return i+1

    goal = 10

    actual = wangunchaozong(goal)

    print("實際打了幾棍?")

    print(actual)

    ]

    Python自帶大量常用函數(shù),文中出現(xiàn)的最常用的print函數(shù)就被用來將變量顯示到輸出窗口中。同時世界上眾多的Python開發(fā)者們也貢獻出巨量的函數(shù)庫,可以方便地讓人們實現(xiàn)各種功能。

    具體如何實現(xiàn)?請看下回分解!

    猜你喜歡
    老祖菩提悟空
    老祖與曾孫
    人類老祖在哪兒生活?
    軍事文摘(2023年20期)2023-10-31 08:42:26
    俄藏инв.№2522西夏文《修菩提心》考
    西夏研究(2023年1期)2023-03-13 02:38:30
    清代悟空戲考述
    戲曲研究(2022年3期)2022-05-10 08:08:04
    “帥”悟空來也
    《菩提心》創(chuàng)作隨想
    “悟空”之道
    海峽姐妹(2019年5期)2019-06-18 10:40:52
    菩提心系列之2 50×50cm 金潛紙重彩 2015年
    老街口
    飛天(2018年6期)2018-07-23 14:59:46
    游老祖寺
    灵川县| 恩施市| 射洪县| 保靖县| 曲靖市| 灌南县| 福海县| 张北县| 齐河县| 富裕县| 虹口区| 新化县| 鹤壁市| 巍山| 浦县| 上思县| 凤台县| 怀集县| 西乌珠穆沁旗| 青河县| 开封市| 台江县| 乌苏市| 桐柏县| 邵东县| 湖口县| 繁昌县| 双流县| 西丰县| 宣恩县| 梁平县| 万山特区| 建始县| 双城市| 墨竹工卡县| 德兴市| 西乌| 宁国市| 长宁区| 象州县| 深水埗区|