位置:首頁 > 軟件操作教程 > 編程開發(fā) > Python > 問題詳情

python應(yīng)用操作——使用三元操作符來進(jìn)行條件賦值

提問人:ylm發(fā)布時間:2020-09-29

三元操作符是 if-else 語句也就是條件操作符的一個快捷方式:

[表達(dá)式為真的返回值] if [表達(dá)式] else [表達(dá)式為假的返回值]

這里給出幾個你可以用來使代碼緊湊簡潔的例子。下面的語句是說如果 y 9,給 x 賦值 10,不然賦值為 20”。如果需要的話我們也可以延長這條操作鏈。

x = 10 if (y == 9) else 20

同樣地,我們可以對類做這種操作:

x = (classA if y == 1 else classB)(param1, param2)

在上面的例子里 classA 與 classB 是兩個類,其中一個類的構(gòu)造函數(shù)會被調(diào)用.

下面是另一個多個條件表達(dá)式鏈接起來用以計算最小值的例子:

In [10]: def small(a,b,c):

    ...:     return a if a<=b and a<=c else ( b if b<=a and b<=c else c)

    ...:

In [11]: small(1,0,1)Out[11]: 0

In [12]: small(1,2,3)Out[12]: 1

我們甚至可以在列表推導(dǎo)中使用三元運(yùn)算符:

 

In [14]: [ m**2 if m > 10 else m**4 for m in range(20) ]

Out[14]:

[0,1,16,81,256,625,1296,2401,4096,6561,10000,121,144,169,196,225,256,289,324,61]

繼續(xù)查找其他問題的答案?

相關(guān)視頻回答
回復(fù)(0)
返回頂部