for 迴圈 功能 for 迴圈是一種迭代迴圈機制,迭代即重覆相同的邏輯操作,每次的操作都是基於上一次的結果而進行的。並且for迴圈可以遍歷任何序列的項目,如一個列表或者一個字元串 語法 for 迴圈的一般格式如下: for <variable> in <sequence> <staements> ...
for 迴圈
功能
for 迴圈是一種迭代迴圈機制,迭代即重覆相同的邏輯操作,每次的操作都是基於上一次的結果而進行的。並且for迴圈可以遍歷任何序列的項目,如一個列表或者一個字元串
語法
for 迴圈的一般格式如下:
for <variable> in <sequence>
<staements>
註釋:variable 為變數,用於控制被迭代的對象;sequence 是可迭代的對象多為列表或者字元串
for迴圈實例:
str="hello"
for i in str :
print(i)
運行結果:
D:\Anaconda3\python.exe D:/PycharmProjects/pythonz/day1/boke.py
h
e
l
l
o
遍歷序列類型:
name_list=['hu','jin','xie','xu']
for i in name_list : #通過序列迭代
print(i)
print('\n')
for i in range(len(name_list)) : #通過索引迭代
print('index is %s,name is %s'%(i+1,name_list[i]))
print('\n')
for i ,name in enumerate(name_list,1) : #基於enumerate的項和索引
print('index is %s,name is %s'%(i,name))
運行結果:
D:\Anaconda3\python.exe D:/PycharmProjects/pythonz/day1/boke.py
hu
jin
xie
xu
index is 1,name is hu
index is 2,name is jin
index is 3,name is xie
index is 4,name is xu
index is 1,name is hu
index is 2,name is jin
index is 3,name is xie
index is 4,name is xu
for語句中的range()函數
如果你需要遍曆數字序列,可以使用內置range()函數,它會生成數列。
range()的語法:
range(start,end,step=1)
(1) range(10):預設step=1,start=0,生成的可迭代對象,包含[0,1,2,3,4,5,6,7,8,9]
(2) range(1,10):指定start=1,end=10, 預設step=1,生成的可迭代對象,包含[1,2,3,4,5,6,7,8,9]
(3) range(1,10,2): 指定start=1,end=10, step=2,生成的可迭代對象,包含[1,3,5,7,9]
例如:
for i in range(1,10,2) :
print(i)
運行結果:
1
3
5
7
9
註:for基於range()實現計數迴圈,range()聲稱可迭代對象,說明for迴圈本質還是一種迭代迴圈
你可以結合range()和len()函數以遍歷一個序列的索引,如下所示:
str=['hu','jin','xie','xu']
for i in range(len(str)) :
print(i+1 ,str[i])
運行結果:
D:\Anaconda3\python.exe D:/PycharmProjects/pythonz/day1/boke.py
1 hu
2 jin
3 xie
4 xu
if-else 語句
Python編程中if語句用於控製程序的執行,基本形式為:
if 判斷條件:
執行語句.....
else :
執行語句.....
其中“判斷條件”成立時(非零),則執行後面的語句,執行的內容以縮進來區分表示同一範圍。else為可選語句,當條件不成立時執行相關語句,具體例子如下:
_name="leigou"
name = input("username:")
if name == _name :
print("Welcome boss")
else :
print("you are wrong the name is %s:"%_name)
正確輸入時,運行結果:
D:\Anaconda3\python.exe D:/PycharmProjects/pythonz/z.py
username:leigou
Welcome boss
錯誤輸入時,運行結果:
D:\Anaconda3\python.exe D:/PycharmProjects/pythonz/z.py
username:Leigou
you are wrong the name is:leigou
當判斷多個文件值時,可以使用以下形式:
if 判斷條件1:
執行語句1.....
elif 判斷條件2:
執行語句2.....
elif 判斷條件3 :
執行語句3.....
else :
執行語句4.....
實例如下:
num=2
if num == 1 :
print("boss")
elif num == 2:
print("student")
elif num == 3:
print("worker")
else :
print(num) #條件都不成立時輸出
運行結果:
D:\Anaconda3\python.exe D:/PycharmProjects/pythonz/z.py
student
如果判斷需要多個條件同時判斷時,可以使用or(或),表示兩個條件有一個成立時判斷條件即成立;表示兩個條件同時成立的情況下,判斷條件才成立,可以使用and(與),實例如下:
num = 10
if num > 0 or num < 10 :
print("hello")
else :
print("undefine")
num = 8
if (num >= 0 and num <= 5) or (num >= 10 and num
<= 15) :
print("hello")
else :
print("undefine")
運行結果:
D:\Anaconda3\python.exe D:/PycharmProjects/pythonz/z.py
hello
hello
undefine
while迴圈
Python編程中while迴圈語句用於迴圈執行程式,即在某條件下,迴圈執行某段程式,以處理需要重覆處理的相同任務,其基本形式如下:
while 判斷條件:
執行語句......
執行語句可以是單個語句塊。判斷語句可以是任何表達式,任何非零或非空的值均為True。當判斷條件是Flase時,迴圈結束,實例如下:
count=0
while count < 5 :
print("This count is :%s"%count)
count+=1
print("Good
bye!")
運行結果:D:\Anaconda3\python.exe D:/PycharmProjects/pythonz/z.py
This count is :0
This count is :1
This count is :2
This count is :3
This count is :4
Good bye!
while語句還有另外兩個重要的命令continue,break來跳過迴圈,continue用來跳過該次迴圈,break則用來退出本次迴圈,此外“判斷條件”還可以是個常數,表示迴圈必定成立,具體用法如下:
i=1
while i < 10 :
i = i + 1
if i%2 > 0 :
continue
print(i)
print("="*40)
i=1
while 1 :
print(i,"\t",end="")
i+=1
運行結果:
D:\Anaconda3\python.exe D:/PycharmProjects/pythonz/z.py
2
4
6
8
10
========================================
1 2 3 4 5 6 7 8 9 10