python條件迴圈疊加 Python 條件與迴圈

2021-10-19 21:37:33 字數 3298 閱讀 3871

python idle下:選中**,alt+3 群體注釋;alt+4 群體取消注釋;ctrl+ 集體縮排。

一、if語句

(一).語法規則

if(橙色關鍵字),條件和表示式分開寫的話,if這一行的末尾絕對不要忘了冒號":"

實在沒有語句,放乙個pass佔位符,不然沒有接語句會報錯。

if...elif從上往下執行。會進入第乙個滿足真值條件的**塊,同層的if...elif只會執行一次。只要滿足其中乙個判斷條件,就不會再往下執行了。

else不是必須的,但else後面不能接判斷語句。

(二).真假值對照表

(三).一行語句判斷

格式:result1 if 條件語句 else result2

當條件滿足時,返回result1,否則返回else後面的語句(也就是result2)。

例:a = 10

print(true if a > 1 elsefalse)#true

view code

(四).補充

range() range的意思是:區間

range(10) -> 0~9 只放乙個引數,預設從0開始了。左閉右開,10取不到。

range(1,10) -> 1~9 左閉右開,stop的值取不到。

range(1,10,2) -> 1,3,5,7,9 步長。隔幾個取一下。

random.randint(1,10) 兩邊都取得到,可用help(random.randint)檢視說明。先導入random,再dir()

random.random() 不要放引數。隨機返回0-1之間的浮點小數。1取不到

random.sample(iterable,n) return list. 從序列中隨機抽取n個

random.choice(iterable) 從序列中,隨機返回乙個元素

input()內建函式:提示輸入,並獲取輸入的內容,輸出的是字串。

二、while 迴圈

while 條件語句:

pass

條件滿足時才會進入迴圈。必須要有終止條件,不然就是死迴圈(除非有break),0 false {}  都為假。

break:終止本層迴圈。跳出去了,下面的語句就不會執行了。

continue:跳過本次迴圈,但不結束迴圈,直接到while後面的判斷語句。

三、for 迴圈

遍歷迭代物件中的元素。

for i in "1,2,3":print(i, end="")

# 執行結果:1,2,3

# 字串中,逗號也是乙個元素

#把上面**中的序列型別改一下:#上面是 "1,2,3"#這裡是 (1,2,3)

for i in (1,2,3):print(i, end=" ")

# 遠行結果:1 2 3

# 元組中的逗號只是用來隔開每乙個元素的

(一).python3中的for迴圈體系與其他語言不一樣,注意看下面這個例子:

for i in range(1, 10):print(i, end=" ")

i+= 2

#執行結果:1 2 3 4 5 6 7 8 9

為啥自加2了,結果卻依然還是 1-9?因為一次迴圈執行完後,跑回去了,每一次i都會被重新賦值。根本不會改變遍歷的次數。

趁熱打鐵,看下面這個案例:

for i in range(1, 10):

i+= 2

print(i, end=" ")#執行結果:3 4 5 6 7 8 9 10 11

根本不會影響遍歷的次數。列印出來的,依舊是9個值。也就是說,還是執行了9次迴圈。

for迴圈的機制是迭代窮盡了,才結束迴圈。通過遍歷的次數來控制迴圈。遍歷幾次,就迴圈幾次。物件中的元素被遍歷完了,那就迴圈結束拜拜了。

分析下例:

for i in range(1, 10, 2):

i+= 2

print(i, end=" ")#執行結果:3 5 7 9 11

此例設定了range區間的步長,每隔2個取一次,更改了遍歷的次數,此處遍歷了5次,所以是5個結果。

(二).for迴圈補充:

#用for迴圈遍歷迭代物件中的多個元素

li = [("abb", "b"), ("c", "d11"), ("e", "f00")]#物件中,每個元素的數量都必須是一樣的。多乙個,少乙個,都會報錯。

for i, j inli:print(i, j)"""執行結果:

abb b

c d11

e f00"""

四、同層迴圈的else體系:

只有正常結束的迴圈(不能被break),才會執行else部分。

一層迴圈內,如果遇到break就是強制終止當前迴圈了,與之配套的else語句塊就不會執行了,因為不是正常結束迴圈。

五、總結for 和 while:

相同點:都能迴圈做一件重複的事情。(好像是廢話2333)

不同點:

while在條件不成立的時候停止。需要有終止條件。

for在迭代物件窮盡的時候停止。需要的是可迭代物件。

while是條件迴圈,for是遍歷迴圈。

六、巢狀迴圈

類似行、列的概念,要清楚一層一層怎麼執行的。

外面走一步,裡面全部走完。

先看下面這個例子,理解一下每一層是怎麼執行的:

for i in range(2):print("***", i)for j in range(2):print("00", j)"""*** 0

00 0

00 1

*** 1

00 0

00 1"""

view code

經典的9*9乘法表案例:

#列印9*9乘法表

for i in range(1, 10): # 控制行,共9行for j in range(1, i + 1): # 控制拼接次數,多少列print("{}x{}={}".format(j, i, i * j), end="\t") # 不設定end,每次結束本層迴圈都會換行print()

#利用列表推導式,一行**

print("\n".join(["".join(["{}x{}={}\t".format(j, i, i * j) for j in range(1, i + 1)]) for i in range(1, 10)]))"""可讀性很差,只能用來裝b。

看著上面的例子寫,先寫最外層的for,然後再乙個個往裡塞。"""

Python 條件 迴圈

條件語句 迴圈語句 字典的遍歷 方法1 2 l 1,2,3,4,5,6,7 3for index in range 0,len l 4if index 5 5print l index 67 方法2 8 l 1,2,3,4,5,6,7 9for index,item in enumerate l 1...

python的迴圈條件

s 1 while s 9 迴圈的條件,不符合條件時退出 print 歡迎你 s s 9 else 當不符合條件時,可以用else print 再見 i 1 whilei 10 i 1 ifi 2 0 非雙數時跳過輸出 continueprint i 輸出雙數2 4 6 8 10 i 1 while...

python 條件 迴圈語句

1.python中語句塊如何定義 在python中,冒號 用來標識語句塊的開始,塊中的每乙個語句都是縮排的。當回退到和已經閉合的塊一樣的縮排量時,就表示當前塊已經結束。預設推薦縮排量是4個空格,乙個tab字元為8個空格。2.python中比較運算子 3.布林運算子 andor not4.示例 cod...