您好,登錄后才能下訂單哦!
這篇文章將為大家詳細(xì)講解有關(guān)python中數(shù)據(jù)類型和控制流的示例分析,小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。
數(shù)據(jù)類型
python 中包含六個(gè)標(biāo)準(zhǔn)數(shù)據(jù)類型分別為:
Number(數(shù)字)、String(字符串)、List(列表)、Tuple(元組)、Set(集合)、Dictionary(字典)。
不同的數(shù)據(jù)類型往往對應(yīng)不同的用途。這個(gè)很好理解。比如你可以用一個(gè)字符串用來儲存一個(gè)人的名字。
name = "六小登登"
但是想你存一個(gè)人的信息,比如姓名,年齡,身高等。這時(shí)候你用字符串就不合適了。此時(shí)字典是合適的。
person = { name: "六小登登", age: 18, height: 180 }
字典適合存一個(gè)人的信息,那如何有很多人怎么辦?此時(shí)列表就會起到作用。
people = [{name: "二狗"},{name: "狗蛋"}]
你看就是這么簡單,什么容器裝什么類型的水。彼此相互協(xié)作。
其中它們又可分為「可變類型」和「不可變類型」:
不可變類型 3 種:Number、String、Tuple。
可變類型 3 種:List、Set、Dictionary。
可變類型與不可變類型的區(qū)別就是一個(gè)值是可以改變的,一個(gè)是不可以改變的。有的人可能就會疑惑,不對呀登哥,我明明聲明了一個(gè)變量 age = 18,然后在后面把它改成 age = 20是已經(jīng)修改的呀,怎么會是不可變的呢。
其實(shí)在計(jì)算機(jī)的內(nèi)容空間中,變量和值是分開的,而變量只是保存了一個(gè)值的引用而已,而引用指向值。
如果你修改的不可變量類型的值,它會重新創(chuàng)建一個(gè)新的值,然后把這個(gè)變量指向這個(gè)值。比如:
age = 18 id(age) 4478947024 //引用 age = 20 id(age) 4478947088 //引用
所以你會發(fā)現(xiàn)當(dāng)你修改不可變類型的值后,它引用是不同的。而可變類型的引用卻是相同的。
list = [1,2] id(list) 4481387656 //此時(shí)的引用 list[0]=2 print(list) [2, 2] id(list) 4481387656 //修改后的引用,依然相同
控制流
上篇文章中我們說了,程序默認(rèn)是「上下執(zhí)行」的,但是如果遇到一些特殊的情況怎么應(yīng)對呢?此時(shí)就要說到 python 中的控制流了。
控制流有三種方式:
順序執(zhí)行:就是我們說的上下執(zhí)行
選擇執(zhí)行:就是條件判斷,通過 if...else語句選擇不同的代碼塊執(zhí)行。
循環(huán)執(zhí)行:就是反復(fù)執(zhí)行一段代碼,通過 for,while。
條件判斷
if age>19: print("111") else: print("222")
上面代碼中就會根據(jù) age 的不同去執(zhí)行不同的代碼。當(dāng)然如果你有多種條件,你可以使用elif。
if age < 8: print("兒童") elif age < 18: print("少年") else: print("青年")
除此之外你還可以進(jìn)行「if嵌套」:
if age<8: if height>100: print("1") else: print("2") else: print("3")
循環(huán)語句
Python中的循環(huán)語句有 for 和 while 兩種。
1.while語法:
while 判斷條件: 語句
例子:
a = 1 while a<10: print(a)
使用 while 時(shí)一定要注意判斷條件,如果條件一直為真值,就會「無限循環(huán)」。
a = 1 while a: print(a)
此時(shí)程序就會一直執(zhí)行下去,不會結(jié)束。此外我們還可以使用 while...else語句執(zhí)行判斷條件為 false時(shí)的情況。
a = 1 while a < 10: print(a) a += 1 else: print('大于10')
2.for語法:
for 循環(huán)它會遍歷序列中的每一個(gè)項(xiàng)目
for i in range(1, 5): print(i) else: print('結(jié)束') list = [1,2,3,4] for temp in list: print(temp)
break 和 continue
循環(huán)語句我們已經(jīng)了解了,但是好像少點(diǎn)什么,比如我不想循環(huán)了怎么辦?我想在滿足一個(gè)條件之后把循環(huán)結(jié)束怎么辦?緊緊只是掌握上面的知識顯然我們無法做到。這時(shí)候就需要用到 break 和 continue了。
break語句:可以跳出 for 和 while 的循環(huán)體。后續(xù)代碼將不會再執(zhí)行。
continue語句:僅跳過當(dāng)前循環(huán),然后繼續(xù)進(jìn)行下一輪循環(huán)。
list = [1, 2, 3, 4] for item in list: if item == 2: break print(item)
此時(shí)代碼只會執(zhí)行一次,當(dāng)?shù)扔?2 時(shí)就會結(jié)束整個(gè)循環(huán)。
list = [1, 2, 3, 4] for item in list: if item == 2: continue print(item)
你會發(fā)現(xiàn)此時(shí)代碼只有在等于 2 時(shí)不執(zhí)行,其他都會執(zhí)行。
練習(xí)打印 99乘法表
i = 1 while i<10: j =1 while j<=i: print("%s*%s=%s" % (j,i, i*j), end=" ") j+=1 print("") i+=1
效果如下。
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
關(guān)于“python中數(shù)據(jù)類型和控制流的示例分析”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯(cuò),請把它分享出去讓更多的人看到。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。