首頁  >  文章  >  後端開發  >  Python中的條件判斷語句基礎學習

Python中的條件判斷語句基礎學習

不言
不言原創
2018-04-27 15:25:361548瀏覽

這篇文章主要介紹了Python中的條件判斷語句基礎學習教程,文中使用的是Python2.x版本但條件語句部分的使用規則未在3.x中改變,需要的朋友可以參考下

if語句用來檢驗一個條件, 如果條件為真,我們執行一塊語句(稱為if-區塊), 否則我們處理另外一塊語句(稱為else-區塊)。 else 子句是可選的。

使用if語句:

#!/usr/bin/python
# Filename: if.py 
number = 23
guess = int(raw_input('Enter an integer : '))
if guess == number:
 print 'Congratulations, you guessed it.' # New block starts here
 print "(but you do not win any prizes!)" # New block ends here
elif guess < number:
 print &#39;No, it is a little higher than that&#39; # Another block
 # You can do whatever you want in a block ...
else:
 print &#39;No, it is a little lower than that&#39; 
 # you must have guess > number to reach here

print &#39;Done&#39;
# This last statement is always executed, after the if statement is executed

#輸出:

$ python if.py
Enter an integer : 50
No, it is a little lower than that
Done
$ python if.py
Enter an integer : 22
No, it is a little higher than that
Done
$ python if.py
Enter an integer : 23
Congratulations, you guessed it.
(but you do not win any prizes!)
Done


#在這個程式中,我們從使用者得到猜測的數,然後檢驗這個數是否是我們手中的數。我們把變數number設定為我們想要的任何整數,在這個例子中是23。然後,我們使用raw_input()函數來取得使用者猜測的數字。函數只是重複使用的程式段。

我們為內建的raw_input函數提供一個字串,這個字串被印在螢幕上,然後等待使用者的輸入。一旦我們輸入一些東西,然後按下回車鍵之後,函數返回輸入。對於raw_input函數來說是一個字串。我們透過int把這個字串轉換為整數,並把它儲存在變數guess中。事實上,int是一個類,不過你想在對它所需了解的只是它把一個字串轉換為一個整數(假設這個字串含有一個有效的整數文字資訊)。

接下來,我們將使用者的猜測與我們選擇的數做比較。如果他們相等,我們列印一個成功的訊息。注意我們使用了縮排層次來告訴Python每個語句分別屬於哪一個區塊。這就是為什麼縮排在Python如此重要的原因。我希望你能夠堅持「每個縮排層一個製表符」的規則。你是這樣的嗎?

注意if語句在結尾處包含一個冒號-我們透過它告訴Python下面跟著一個語句區塊。

然後,我們檢驗猜測是否小於我們的數,如果是這樣的,我們告訴使用者它的猜測大了一點。我們在這裡使用的是elif子句,它事實上把兩個相關聯的if else-if else語句合併為一個if-elif-else語句。這使得程序更加簡單,並且減少了所需的縮排數量。

elif和else子句都必須在邏輯行結尾處有一個冒號,下面跟著一個對應的語句區塊(當然也包含正確的縮排)。

你也可以在一個if區塊中使用另一個if語句,等等-這稱為嵌套的if語句。

記住,elif和else部分是可選的。一個最簡單的有效if語句是:

if True:
 print &#39;Yes, it is true&#39;

在Python執行完一個完整的if語句以及與它相關聯的elif和else子句之後,它移向if語句區塊的下一個語句。在這個例子中,這個語句塊是主塊。程式從主區塊開始執行,而下一個語句是print 'Done'語句。在這之後,Python看到程式的結尾,簡單的結束運行。

儘管這是一個非常簡單的程序,但是我已經在這個簡單的程序中指出了許多你應該注意的地方。所有這些都是十分直接了當的(對於那些擁有C/C 背景的用戶來說是特別簡單的)。它們在開始時會引起你的注意,但是以後你會對它們感到熟悉、「自然」。

下面我們再來看一個程式碼實例:

#! /usr/bin/env python
#coding:utf-8
print "请输入任意一个整数数字:"
number = int(raw_input()) #通过 raw_input()输入的数字是字符串
    #用 int()将该字符串转化为整数
if number == 10:
 print "您输入的数字是:%d"%number
 print "You are SMART."
elif number > 10:
 print "您输入的数字是:%d"%number
 print "This number is more than 10."
elif number < 10:
 print "您输入的数字是:%d"%number
 print "This number is less than 10."
else:
 print "Are you a human?"

特別提醒看官注意,前面我們已經用過raw_input() 函數了,這個是取得使用者在介面上輸入的信息,而透過它得到的是字串類型的資料。

上述程序,依據條件判斷,不同條件下做不同的事情了。需要提醒的是在條件中:number == 10,為了閱讀方便,在 number 和 == 之間有一個空格最好了,同理,後面也有一個。這裡的10,是int 類型,number 也是int 類型.

把這段程式保存成一個擴展名是.py 的文件,例如保存為num.py,進入到存儲這個文件的目錄,運行Python num.py,就能看到程式執行結果了。以下是我執行的結果,供參考。

$ Python num.py

请输入任意一个整数数字:

#複製程式碼

程式碼如下:

12

#

您输入的数字是:12
This number is more than 10.

$ Python num.py

#

请输入任意一个整数数字:

複製程式碼 程式碼如下:

10

您输入的数字是:10
You are SMART.

$ Python num.py

请输入任意一个整数数字:

複製程式碼### 程式碼如下:######9##########
您输入的数字是:9
This number is less than 10.
#########不知道各位是否注意到,上面的那段程式碼,開始有一行:#########
#! /usr/bin/env python
#########這是什麼意思呢? ###

这句话以 # 开头,表示本来不在程序中运行。这句话的用途是告诉机器寻找到该设备上的 Python 解释器,操作系统使用它找到的解释器来运行文件中的程序代码。有的程序里写的是 /usr/bin Python,表示 Python 解释器在 /usr/bin 里面。但是,如果写成 /usr/bin/env,则表示要通过系统搜索路径寻找 Python 解释器。不同系统,可能解释器的位置不同,所以这种方式能够让代码更将拥有可移植性。对了,以上是对 Unix 系列操作系统而言。对与 windows 系统,这句话就当不存在。

在“条件”中,就是上节提到的各种条件运算表达式,如果是 True,就执行该条件下的语句。

三元操作符
三元操作,是条件语句中比较简练的一种赋值方式,它的模样是这样的:

>>> name = "qiwsir" if "laoqi" else "github"
>>> name
&#39;qiwsir&#39;
>>> name = &#39;qiwsir&#39; if "" else "python"
>>> name
&#39;Python&#39;
>>> name = "qiwsir" if "github" else ""
>>> name
&#39;qiwsir&#39;

总结一下:A = Y if X else Z

什么意思,结合前面的例子,可以看出:

  • 如果 X 为真,那么就执行 A=Y

  • 如果 X 为假,就执行 A=Z

如此例

>>> x = 2
>>> y = 8
>>> a = "python" if x>y else "qiwsir"
>>> a
&#39;qiwsir&#39;
>>> b = "python" if x<y else "qiwsir"
>>> b
&#39;python&#39;

相关推荐:

python中的文件打开与关闭操作命令介绍

Python中的array数组模块相关使用

以上是Python中的條件判斷語句基礎學習的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn