二、Python基礎---循環--條件判斷(while-for-if-elif-else)
1.代碼實例: #if語句
#!/usr/bin/python3
#_*_coding:utf-8_*_
num = 10
if num == 10:
print('對')
運行結果:
[root@htuidc ~]# python if.py
對
2.復雜的if語句 #註意事項:一定要註意中英的格式,語句的縮進,縮進為4個空格,切記!!!
代碼實例:if語句
#!/usr/bin/python3
#_*_coding:utf-8_*_
xgj = 'htuidc'
if xgj == 'htuidc':
xuesheng={'qqq':'1001','wwww':'1002','eee':'1003'}
print('字典元素個數為: %d個'%len(xuesheng))
xuesheng.clear()
print('字典刪除後元素個數為:%d'%len(xuesheng))
運行結果:
字典元素個數為: 3個
字典刪除後元素個數為:0
3.else語句 #我理解的else的意思是 否則 如果if怎麽怎麽樣 否則else就怎麽怎麽樣,else不是獨立語句,只能作為if語句的一部分。
代碼實例:
#!/usr/bin/python3
#_*_coding:utf-8_*_
num = 10
if num > 10:
print('錯')
else:
print('其他')
運行結果:
其他
4.elif語句 #elif是else與if的簡寫,意思為有條件的else語句,需要再次判斷的語句。
代碼實例:
#!/usr/bin/python3
#_*_coding:utf-8_*_
num = 10
if num > 10:
print('錯')
elif 0 <= num >=10:
print('在一個區間')
else:
print('其他')
運行結果:
在一個區間
嵌套代碼塊
代碼實例:
#!/usr/bin/env python3
#!/-*-coding-UTF-8-*-
num = 10
if num%2==0:
if num%3==0:
print('你輸入的數字可以整除2和3')
elif num%4==0:
print('你輸入的數字可以整除2和4')
else:
print('你輸入的數字可以整除2,但是不能整除3和4')
else:
if num%3==0:
print('你輸入的數字可以整除3,但不能整除2')
else:
print('你輸入的數字不能整除2和3')
運行結果:
你輸入的數字可以整除2,但是不能整除3和4
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
is 同一性運算符
>>> x=y=[1,2]
>>> z=[1,2]
>>> x==y
True
>>> x==z
True
>>> y==z
True
>>> x is y
True
>>> x is z
False
###雖然值相同,但是不在一個對象裏
>>> x is not z
True
!!!!!!循環!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1.while循環
代碼實例:
#!/usr/bin/python3
#!_*_coding:UTF-8_*_
n=1
while n<=1000:
print('當前數字是:',n)
n +=1
運行結果:
當前數字是: 1
當前數字是: 2
當前數字是: ......
當前數字是: 999
當前數字是: 1000
2.for循環
代碼實例:
#!/usr/bin/python3
#!-*-coding:UTF-8-*-
n=0 #進行賦值
fields=['a','b','c'] #進行賦值
while n<len(fields): #條件判斷---如果n小於fields的長度
print(fields[n]) #打印fields的0索引位置
n+=1 #加法賦值運算符 n=n+1
運行結果:
a
b
c
代碼實例:
htuidc=['1','2','3'] #賦值
for dl in htuidc: #for in 循環打印
print(dl) #進行打印
運行結果:
1
2
3
###註意事項:如果能使用for循環,盡量不要用while循環!!!
!!!叠代工具!!!!!
1.並行叠代
代碼實例:
#!/usr/bin/python3
#!-*-coding:UTF-8-*-
student1=['qqq','www','eee']
number=[1001,1002,1003]
for i in range(len(student1)):
print(number[i])
htu=['d','l']
idc=[1001,1002,1003]
for xgj,dh in zip(htu,idc):
print(xgj)
xgj=['1','2']
dh=[1001,1002]
for htu,idc in zip(xgj,dh):
print(idc)
運行結果:
1001
1002
1003
d
l
1001
1002
###註意:zip函數可以作用於任何數量的序列。
!!!!!!!跳出循環!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1.break語句用在while和for循環中
代碼實例:
#!/usr/bin/python3
#!/-*-coding:UTF-8-*-
for letter in 'hello':
if letter == 'l': #遍歷打印,知道循環打印到l跳出循環
break
print('當前字母為:',letter)
num = 10
while num > 0:
print('輸出數字為:',num)
num -= 1
if num == 8: #遍歷打印輸出,知道等於8跳出循環
break
運行結果:
當前字母為: h
當前字母為: e
輸出數字為: 10
輸出數字為: 9
2.continue #跳出當前的循環,然後進行下一輪的循環----只能跳出一次
代碼實例:
#!/usr/bin/python3
#!/-*-coding:UTF-8-*-
for letter in 'hello':
if letter == 'l': #遍歷打印,知道循環打印到l跳出循環,然後出l繼續打印循環
continue
print('當前字母為:',letter)
運行結果:
h
e
o
循環中的else子句
1.在while中使用else
代碼實例:
num = 0
while num < 3:
print(num,'小於3')
num = num + 1
else:
print(num,'大於或等於3')
print('結束循環')
運行結果:
0 小於3
1 小於3
2 小於3
3 大於或等於3
結束循環
2.在for中使用else
代碼實例:
#!/usr/bin/python3
#!/-*-coding:UTF-8-*-
names = ['xiaomeng','xiaozhi']
for name in names:
if name == 'xiao':
print('名稱:',name)
break
print('循環名稱列表'+name)
else:
print('沒有循環數據')
print('結束循環')
運行結果:
循環名稱列表xiaomeng
循環名稱列表xiaozhi
沒有循環數據
結束循環
!!!pass語句!!!!!!
pass是空語句 #就是什麽都不做的語句,只是占位語句。
#!/usr/bin/python3
#!/-*-coding:UTF-8-*-
xgj = 'htuidc'
if xgj == 'htuidc':
print('對')
elif xgj == 'idchtu':
pass ###如果沒有這個占位語句就會出錯
else:
print('錯')
運行結果:
對
未完待續。。。。。。本章為第二章
後續繼續第三章
二、Python基礎---循環--條件判斷(while-for-if-elif-else)