python -流程控制
阿新 • • 發佈:2018-11-04
生成式 class 死循環 spa 題目 int 跳出循環 電話 可叠代對象
循環結構(while)
-
格式
while 表達式: 語句塊
執行流程:當程序執行到while語句時,首先判斷表達式的真假。若表達式的值為真,則執行對應的語句塊,之後返回while繼續判斷表達式的真假;若表達式的值為假,則跳過語句塊,跳過while。
-
說明:
-
表達式:也叫循環條件
-
語句塊:也叫循環體
-
死循環:表達式的值一直為真,稱為死循環
-
break:結束循環的執行(立即跳出循環)
-
continue:結束本次循環,直接進入下次循環
-
else:結合while使用
i = 1 while i <= 10: print(i) i
-
循環結構(for-in)
-
說明:也是一種循環結構,常用於遍歷可叠代的對象,如:字符串、列表、元組、字典、集合
-
格式:
for x in y: 循環體
執行流程:x依次表示y中的一個元素,遍歷完所有元素後結束循環。
-
示例:遍歷字符串、列表、字典
列表生成式
-
可叠代對象:列表、元組、字典等都是可叠代對象,可以遍歷的對象
-
range函數:
print(range(10)) print(range(0, 10)) ?
-
列表生成式:可以快速生成有特定規律的列表
# print([i for i in range(1, 11)]) # print([i*2 for i in range(1, 11)]) # print([i*i for i in range(1, 11)]) # print([str(i) for i in range(1, 11)]) print([i for i in range(1, 11) if
循環的嵌套
-
循環能否嵌套?
-
答:能
-
-
示例:
‘‘‘ 從終端輸入一個整數n,打印如下圖形 1 1 2 1 2 3 1 2 3 4 ... 1 2 3 4 ... n ‘‘‘ ? # 外層循環控制打印多少行 i = 1 while i < n+1: # 內層循環控制每一行的打印 j = 1 while j <= i: print(j, end=‘‘) j += 1 i += 1 print()
練習:使用for-in完成上面的題目
提示:可以結合range完成
練習:
-
計算1~100之間所有整數的和
-
打印字符A~Z
-
循環輸入10個字符,小寫轉大寫,大寫轉小寫,其他字符不變,然後輸出
-
將12345轉換為54321
-
將12345轉換為‘12345‘,不要使用str
-
將‘12345‘轉換為12345,不要使用int
-
遍歷列表,打印:
我叫name,今年age歲,家住dizhi,電話phone
lt = [ {‘name‘:‘小王‘, ‘age‘:18, ‘info‘:[(‘phone‘, ‘123‘), (‘dizhi‘, ‘廣州‘)]}, {‘name‘:‘小芳‘, ‘age‘:19, ‘info‘:[(‘phone‘, ‘789‘), (‘dizhi‘, ‘深圳‘)]}, {‘name‘:‘小杜‘, ‘age‘:22, ‘info‘:[(‘phone‘, ‘567‘), (‘dizhi‘, ‘北京‘)]}, {‘name‘:‘小孟‘, ‘age‘:28, ‘info‘:[(‘phone‘, ‘000‘), (‘dizhi‘, ‘上海‘)]}, {‘name‘:‘小喬‘, ‘age‘:26, ‘info‘:[(‘phone‘, ‘111‘), (‘dizhi‘, ‘河南‘)]}, ]
-
打印九九乘法表
-
從終端輸入兩個整數m,n,打印m*n的表格,如:2,5,打印如下圖形
1 2 3 4 5 6 7 8 9 10
python -流程控制