1. 程式人生 > >python初學一(條件語句與常見例題)

python初學一(條件語句與常見例題)

一、常用的條件語句:

                用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)