寫在之前
我們寫程序,就好比學生時代寫作文一樣,由 “字” 到 “詞” 到 “句” 最后到 “文章” 。此前我們學會了一些詞語(對象類型),我們接下來就是學如何造句,而在編程語言里,句子被叫做語句。
條件語句
條件語句,顧名思義,就是根據某個條件,滿足這個條件則執行下面的內容。
1.if
if 是構成條件語句的關鍵詞,由它所發起的就是一個條件語句,翻譯成中文是 “如果” 的意思。下面舉一個非常簡單的例子:
>>> a = 'rocky'
>>> if a == 'rocky':
... print(a)
...
rocky
復制代碼
“if a == ‘rocky': ” 的意思是如果 a == ‘rocky’,那么返回 True,然后就執行下面的語句。這里需要注意的是,英文冒號是必須的,然后下面的一行 “print(a)” 必須要 “tab” 縮進(4 個空格),沒有為什么,這是 Python 的特點,這個被稱為 “語句塊”,必須要通過縮進的方式來表示語句塊的開始和結束。
2.if...elif...else
當進行條件判斷的時候不可能只有一個值,所以僅有 “ if ” 是不夠的,所以在 Python 中當判斷條件為多值的時候,使用如下的形式(截圖來自菜鳥教程):
“ elif ” 和 “ else ” 發起的部分可以省略,那就回歸到了只有一個 “ if ” 的情況,如果是為了應付多條件判斷,則不能省略。下面我們就不在交互模式下寫代碼了,打開你下載的 pycharm 或者別的寫 Python 的編輯器,請看下面的例子:
# -*- coding:utf-8 -*-print('請任意輸入一個數字:')
number = int( input() )if number == 24:print('真棒,猜對了')
elif number > 24:print('大了大了,再想想...')
else:print('小了小了,再想想...')
復制代碼
針對上述程序,有兩點說明:
# -*- coding:utf-8 -*-
復制代碼
上面這一行代碼是聲明程序的編碼格式是 “ utf-8 ”,在程序有中文,有英文,即便沒有中文也要聲明編碼格式。
input() 函數是讓用戶通過鍵盤輸入內容,返回的結果是字符串。
這個例子是根據條件進行判斷,不同的條件下做不同的事情。當然這段程序不完美,很多細節沒有寫,比如沒有解決用戶的輸入不是純數字這個問題,我只是單純的用這個例子來演示一下多值下的條件判斷大概是怎么寫,如果有興趣的話,你可以根據自己的理解去優化這段代碼。
下面是我執行時的結果,僅供參考。
請任意輸入一個數字:
4
小了小了,再想想...
復制代碼
現在不知道你是否已經清晰,其實條件語句中我們所謂的 “條件” ,就是各種條件運算表達式或者布爾值,如果是 True,就執行該條件下的語句塊,如果忘了什么是布爾,請移步去看昨天的文章 -- 零基礎學習 Python 之集合 。
3.三元操作符
三元操作符,是條件語句中比較簡練的一種復制方式,我用一個例子來描述一下它的方式:
>>> like = 'python' if 2 > 1 else 'java'
>>> like
'python'
復制代碼
從上面的例子可以看出來,所謂的 “三元” ,就是將前面的條件語句 “if ... else ..." 寫在一行上。因為這種方式比較常用,所以 Python 解釋器也認識。
如果非要把它抽象成一個公式的話,三元操作符大概是下面這樣子:
A = Y if X else Z
復制代碼
如果 X 為真,則執行的是 A = Y;如果 X 為假,就執行 A = Z。具體的多操作幾遍就熟了。
寫在最后
更多內容,歡迎關注公眾號「Python空間」,期待和你的交流。