第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

是否在列表中理解?

是否在列表中理解?

梵蒂岡之花 2019-06-25 16:08:27
是否在列表中理解?如何在Python中完成以下操作?row = [unicode(x.strip()) for x in row if x is not None else '']實(shí)質(zhì)上:用空字符串替換所有Nones,然后履行職能。
查看完整描述

3 回答

?
斯蒂芬大帝

TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超8個(gè)贊

你完全可以做到,這只是一個(gè)訂購(gòu)問(wèn)題:

[unicode(x.strip()) if x is not None else '' for x in row]

總體而言,

[f(x) if condition else g(x) for x in sequence]

以及,對(duì)于清單的理解if只是條件,

[f(x) for x in sequence if condition]

注意,這實(shí)際上使用了不同的語(yǔ)言構(gòu)造,條件表達(dá)式,它本身并不是理解句法,而if在.之后for…in是列表理解的一部分,并且習(xí)慣于濾光器來(lái)自源可迭代的元素。


條件表達(dá)式可以在各種情況下使用,在這些情況下,您需要根據(jù)某種條件在兩個(gè)表達(dá)式值之間進(jìn)行選擇。這與三元算子?:存在于其他語(yǔ)言中..例如:

value = 123print(value, 'is', 'even' if value % 2 == 0 else 'odd')


查看完整回答
反對(duì) 回復(fù) 2019-06-25
?
瀟瀟雨雨

TA貢獻(xiàn)1833條經(jīng)驗(yàn) 獲得超4個(gè)贊

單程:

def change(f):
    if f is None:
        return unicode(f.strip())
    else:
        return ''row = [change(x) for x in row]

盡管如此,你還是有:

row = map(change, row)

或者你可以使用蘭達(dá)內(nèi)聯(lián)。


查看完整回答
反對(duì) 回復(fù) 2019-06-25
?
四季花海

TA貢獻(xiàn)1811條經(jīng)驗(yàn) 獲得超5個(gè)贊

以下是另一個(gè)說(shuō)明性的例子:

>>> print(", ".join(["ha" if i else "Ha" for i in range(3)]) + "!")Ha, ha, ha!

它利用了這樣一個(gè)事實(shí)if i評(píng)估為False0True函數(shù)生成的所有其他值。range()..因此,對(duì)列表的理解評(píng)估如下:

>>> ["ha" if i else "Ha" for i in range(3)]['Ha', 'ha', 'ha']


查看完整回答
反對(duì) 回復(fù) 2019-06-25
  • 3 回答
  • 0 關(guān)注
  • 459 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)