Python入門教程之三元運算符的使用詳解_第1頁
Python入門教程之三元運算符的使用詳解_第2頁
Python入門教程之三元運算符的使用詳解_第3頁
Python入門教程之三元運算符的使用詳解_第4頁
Python入門教程之三元運算符的使用詳解_第5頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第Python入門教程之三元運算符的使用詳解目錄使用三元運算符的簡單方法使用元組、字典和lambda的直接方法三元運算符可以寫成嵌套的if-else在三元運算符中使用打印功能要點三元運算符也稱為條件表達式,是根據條件為真或假來評估某些內容的運算符。它在2.5版本中被添加到Python中。

它只是允許在單行中測試條件,替換多行if-else,使代碼緊湊。

語法:

[on_true]if[expression]else[on_false]

使用三元運算符的簡單方法

#演示條件運算符的程序

a,b=10,20

#如果ab則復制a的最小值,否則復制b

min=aifabelseb

print(min)

輸出:

10

使用元組、字典和lambda的直接方法

#演示三元運算符的Python程序

a,b=10,20

#使用元組選擇一個項目(if_test_false,if_test_true)[test]如果[ab]為真則返回1,因此索引為1的元素將打印,否則如果[ab]為假則返回0,因此元素為0索引將打印

print((b,a)[ab])

#如果[ab]為真,則使用Dictionary選擇項目,然后打印True鍵的值,否則,如果[ab]為假,則打印False鍵的值

print({True:a,False:b}[ab])

#lambda比上述兩種方法更有效,因為在lambda中,我們確保只評估一個表達式,這與tuple和Dictionary不同

print((lambda:b,lambda:a)[ab]())

輸出:

10

10

10

時間復雜度:O(1)

輔助空間:O(1)

三元運算符可以寫成嵌套的if-else

#演示嵌套三元運算符的Python程序

a,b=10,20

print("Bothaandbareequal"ifa==belse"aisgreaterthanb"

ifabelse"bisgreaterthana")

時間復雜度:O(1)

輔助空間:O(1)

上面的方法可以寫成:

#演示嵌套三元運算符的Python程序

a,b=10,20

ifa!=b:

ifab:

print("aisgreaterthanb")

else:

print("bisgreaterthana")

else:

print("Bothaandbareequal")

輸出:

bisgreaterthana

時間復雜度:O(1)

輔助空間:O(1)

在三元運算符中使用打印功能

例如:

示例:在python3中使用三元運算符查找2中的較大數(shù)

a=5

#[statement_on_True]if[condition]else[statement_on_false]

print(a,"isgreater")if(ab)elseprint(b,"isGreater")

輸出:

7isGreater

時間復雜度:O(1)

輔助空間:O(1)

要點

首先評估給定條件(ab),然后根據條件返回的布爾值返回a或b運算符中參數(shù)的順序與其他語言(如C/C++)不同。在所有Python操作中,條件表達式的優(yōu)先級最低。

****當三元運算符不存在時,在2.5之前使用的方法在如下給出的表達式中,解釋器檢查表達式是否為真,然后評估on_true,否則評估on_false。

語法:

條件為真時,不執(zhí)行表達式[on_false],返回Trueand[on_true]的值。返回Falseor[on_false]的其他值。請注意,真和x等于x。假或x等于x。

[expression]and[on_true]or[on_false]

例子:

#演示條件運算符的程序

a,b=10,20

#如果a小于b,則分配a,否則分配b(注意:如果a為0,則它不起作用。)

min=abandaorb

print(min)

輸出:

10

時間復雜度:O(1)

輔助空間:O(1)

注意:此方法的唯一缺點是on_t

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論