for 變量 in 序列:
操作語句
-
序列:接收序列,表示遍歷范圍。無默認值
-
操作語句:接收操作語句,表示執行一段代碼。無默認值
-
代碼清單1:for語句遍歷提取str
# 單純遍歷的for語句
names = ['Michael', 'Bob', 'Tracy']
# 遍歷輸出names中的元素
for name in names:
print(name)
Michael
Bob
Tracy
-
代碼清單2:for語句遍歷查詢dict
dic = {'a': 1, 'b': 2, 'c': 3, 'd': 4}
# 遍歷鍵值對
print('key_value:', end = '')
for key, value in dic.items():
print(key, value, sep = ':', end = ' ')
# 遍歷鍵
print('keys:', end = '')
for key in dic.keys():
print(key, end = ' ')
# 遍歷值
print('values:', end = '')
for value in dic.values():
print(value, end = ' ')
key_value:a:1 b:2 c:3 d:4
keys:a b c d
values:1 2 3 4
-
代碼清單3:嵌套for語句
students = ['小明', '小紅']
subjects = ['語文', '數學']
sum1 = []
avg = []
for i in students:
print ('開始錄入%s的考試成績!'%i)
sum = 0
for j in subjects:
print('請輸入%s成績:'%j)
score = int(input())
sum += score
average = sum / 2
avg.append(average)
sum1.append(sum)
print(students, '的總分依次是', sum1, ',', '平均分依次是', avg)
print('完成成績錄入!')
開始錄入小明的考試成績!
請輸入語文成績:
97
請輸入數學成績:
90
開始錄入小紅的考試成績!
請輸入語文成績:
89
請輸入數學成績:
100
['小明', '小紅'] 的總分依次是 [187, 189] , 平均分依次是 [93.5, 94.5]
完成成績錄入!
while 條件表達式:
操作語句 1
操作語句 2
-
條件表達式:接收布爾表達式,表示判斷條件是否成立。無默認值
-
操作語句:接收操作語句,表示執行一段代碼。無默認值
-
代碼清單4:while語句
sum = 0
n = 99
while n > 0:
sum += n
n -= 2
print(sum)
-
代碼清單5:while語句無限循環
# 布爾表達式為常數1,始終為真值
while 1:
print('循環')
循環
循環
…
# 布爾表達式每次遞歸運算都為2,始終為真值
x, y = 2, 1
while x / y:
print('循環')
x = x * 2
y = y * 2
循環
循環
…
-
代碼清單6:while語句實現str截取
string = 'abcd'
while string:
print(string)
# 該語句的遞歸計算是,每次從str的第2個字符開始截取
string = string[1:]
abcd
bcd
cd
d
-
代碼清單7:嵌套while語句
j = 1
while j <= 2:
sum = 0
i = 1
name = input('請輸入學生姓名:')
while i <= 2:
print ('請輸入第%d門的考試成績: '%i)
sum += int(input())
i += 1
avg = sum / (i-1)
print(name, '的平均成績是%d'%avg)
j += 1
print('學生成績輸入完成!')
請輸入學生姓名:小明
請輸入第1門的考試成績:
98
請輸入第2門的考試成績:
88
小明 的平均成績是93
請輸入學生姓名:小紅
請輸入第1門的考試成績:
65
請輸入第2門的考試成績:
100
小紅 的平均成績是82
學生成績輸入完成!
-
代碼清單8:break語句的使用
# break語句用于for循環
string = "Python"
for i in string:
# 遍歷至string中的字符n時,不再執行else代碼塊
if i == 'n':
break
else:
print("letter:{}". format(i))
letter:P
letter:y
letter:t
letter:h
letter:o
# break語句用于while循環
counts = 0
while True:
print(counts)
counts += 1
# 滿足counts等于3時跳出循環,不再進入循環體
if counts == 3:
break
0
1
2
-
代碼清單9:break語句用于嵌套循環結構
# 第1層循環,遍歷次數為2
for i in range(2):
print("-----%d-----" %i)
# 第2層循環,遍歷次數為10
for j in range(10):
# 使用break語句,j>1時不執行循環體
if j > 1:
break
print(j)
-----0-----
0
1
-----1-----
0
1
-
代碼清單10:continue語句用于循環結構
# 當i等于1或3時,跳過continue后的print語句
for i in range(0,5):
if i == 1 or i == 3:
continue
print(i)
0
2
4
# 如果遇到偶數,跳過continue后的print語句
counts = 0
while counts < 10:
counts += 1
if counts % 2 == 0:
continue
print(counts)
1
3
5
7
9
-
代碼清單11:continue語句用于嵌套循環結構
# 第1層循環,遍歷次數為2
for i in range(2):
print("-----%d-----" %i)
# 第2層循環,遍歷次數為5
for j in range(5):
# 當j等于2或4時,不執行循環體
if j == 2 or j == 4:
continue
print(j)
-----0-----
0
1
3
-----1-----
0
1
3
-
代碼清單12:pass語句
for element in "Python":
# element為y時,不做任何操作,不會被輸出
if element == "y":
pass
else:
print(element)
P
t
h
o
n
counts = 0
while counts < 5:
counts += 1
# i=3時,不執行循環體
if counts == 3:
pass
else:
print(counts ** 2)
1
4
16
25
[操作語句?for變量?in?序列?if?條件表達式]????
-
操作語句:接收操作語句,表示執行一段代碼。無默認值
-
序列:接收序列,表示遍歷范圍。無默認值
-
條件表達式:接收布爾表達式,表示判斷條件是否成立。無默認值
-
代碼清單13:使用列表推導式生成list
vec = [-4, -2, 0, 2, 4]
# 用vec中元素的倍數,創建一個數組
print([x * 2 for x in vec])
[-8,?-4,?0,?4,?8]
# 創建一個包含2元tuple的list
print([(x, x ** 2) for x in range(6)])
[(0,?0),?(1,?1),?(2,?4),?(3,?9),?(4,?16),?(5,?25)]????
-
代碼清單14:包含條件語句的列表推導式
# 過濾list,刪除list中的負數
print([x for x in vec if x >= 0])
[0,?2,?4]
-
代碼清單15:常規方式與列表推導式對比
# 創建一個平方數list:常規方式
squares = []
for x in range(10):
squares.append(x ** 2)
print(squares)
[0,?1,?4,?9,?16,?25,?36,?49,?64,?81]
# 創建一個平方數list列表推導式
squares = [x ** 2 for x in range(10)]
print(squares)
-
代碼清單16: 包含嵌套循環的列表推導式
[(0,?0),?(0,?1),?(0,?2),?(1,?0),?(1,?1),?(1,?2),?(2,?0),?(2,?1),?(2,?2)]
# 打印由tuple組成的list,i在0至2之間且小于1,j在0至2之間且大于1
[(i, j) for i in range(0, 3) if i < 1 for j in range(0, 3) if j > 1]
[(0,?2)]
(*本文為AI科技大本營轉載文章, 轉載 請 聯系作者 )
◆
精彩推薦
◆
推薦閱讀
-
dfuse、慢霧科技、MYKEY共同出席,與你探討區塊鏈數據架構和項目上鏈那些事!
-
大數據工程師手冊:全面系統的掌握必備知識與工具
-
演講實錄:知乎算法團隊負責人孫付偉:Graph?Embedding在知乎的應用實踐
-
NASNet:神經架構搜索網絡在圖像分類中的表現
-
實操 | 從0到1教你用Python來爬取整站天氣網
-
5大必知的圖算法,附Python代碼實現
-
我們到底該如何看待6G?
-
互聯網大佬為什么愛唱歌
-
驚呆!這輛悍馬自己在跑跑跑跑跑跑跑!
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
