python初學一(條件語句與常見例題)
阿新 • • 發佈:2018-11-11
一、常用的條件語句:
用if 。。。 else。。。。 來表示,一個if 只能對應一個 else。
1、
if 真 :
程式碼塊
else: # 除了條件的其他所有情況。
程式碼塊
2、
二、例題:
1、and or 在if中運用
題目:用條件語句寫出對閏年的判斷 (要求:年份能被4整除但是不能被100整除 或者 能被400整除的閏年
year = input('請輸入年份:\n') if int(year)%400 ==0 or (int(year)%4 == 0 and int(year)%100 != 0): # 通常 and 比 or優先順序高,詳情看 運算子介紹。 print('%d 是運年' %int(year)) else : print('非運年')
2、並列條件 if elif else(一定注意與多個同級 if 的區別):
- 易錯點: if elif else 滿足條件直接跳轉到最後,中間不執行,區別與同級多個 if並列的區別。
old = input('請輸入你的年齡:\n')
if old.isdecimal(): # 判斷是否是數字
if 1 <= int(old) < 7:
print('兒童!')
elif 8 <= int(old) < 17:
print('青年!')
elif 18 <= int(old) < 30:
print('成年!')
elif 31 <= int(old) < 60:
print('中年!')
else:
print('年齡異常!')
else:
print('年齡異常!')
3、判斷整數的位數和整數各個位的數字:
1、用字串的方式結題(簡易):
# 用字串的方式判斷數字是不是五位數等等。
num = input('請輸入一個五位數:\n')
if len(num) == 5: # 用字串的方式判斷整數的位數。
if num[0] == num[4] and num[1] == num[3]: # 用字串切片和索引來提取整數的值。
print('是迴文數!')
else:
print('不是迴文數')
else:
print('請輸入五位數字!')
2、用int的方式解題:
num = input('請輸入一個五位數:\n')
if len(num) == 5:
a = int(num)//10000
b = int(num)%10
c = int(num)//1000%10 # 取整數 千位的數字。
d = int(num)//10%10
if a == b and c == d:
print('%d是迴文數!' %int(num))
else:
print('不是迴文數')
else:
print('請輸入五位數!')
3、取三個數的最大值:
a = 1 , b = 2 ,c =3
1、錯誤例項:
注意:注意 if elif else的用法,該條件語句一但條件滿足,下面所有的條件均不會執行,直接跳轉到 案例 中最後一條print的位置。而else中的語句並不會執行。
a,b,c = 1,2,3
max = a
if a < b:
max = b
elif max < c:
max = c
else:
print(max)
print('程式跳到這裡')
2、更改:
注意 這裡 兩個 if 與 if elif 的區別,條件一執行後不會跳轉到最後一行。
a,b,c = 1,2,3
max = a
if a < b:
max = b
if max < c: # 注意 這裡 兩個 if 與 if elif 的區別,條件一執行後不會跳轉到最後一行。
max = c
else:
print(max)
print("可以列印print('max')") # 多個引號注意轉義字元,詳情看轉義字元的用法。
三、隨機引數模組:
1、利用集合轉化可變列表索引的方式可以產生隨機數。
2、利用random模組產生隨機引數:
# 隨機數模組
import random
list1 = ['石頭','剪刀','布']
a = random.randint(0,2) # 閉區間 0,1,2 隨機數
print(list1[a]) # 第一種利用隨機數 索引 產生
b =random.choice(list1) # 列表元素隨機產生
print(b)