亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如果是空列表,則填充變量

如果是空列表,則填充變量

斯蒂芬大帝 2021-08-05 10:30:34
我有空的列表并填充了數據。我試圖將列表的最后一個元素存儲到一個變量中。如果列表中有元素,則工作正常。然而,當我傳遞一個空的[]列表中,我得到錯誤,如:IndexError: list index out of range。我應該為 [] 使用哪種語法?ids = [    'abc123',    'ab233',    '23231ad',    'a23r2d23'    ]ids = []# I tried these for emptyfinal = [ids if [] else ids[-1]] #error# final = [ids if ids == None else ids == ids[-1]] # error# final = [ids if ids == [] else ids == ids[-1]] # gives [[]] instead of []print(final)基本上,如果一個空列表在 ids 中,我需要它給 []。如果有元素,則給出最后一個有效的元素。
查看完整描述

3 回答

?
慕桂英4014372

TA貢獻1871條經驗 獲得超13個贊

這是執行此操作的一種方法:

final = ids[-1] if ids else None

(當列表為空時,替換None為您希望采用的值final。)


查看完整回答
反對 回復 2021-08-05
?
UYOU

TA貢獻1878條經驗 獲得超4個贊

您可以通過以下表達式檢查空列表。


data = []

if data:  #this returns False for empty list

    print("list is empty")

else:

    print("list has elements")

所以你可以做的是。


final = data[-1] if data else []

print(final)


查看完整回答
反對 回復 2021-08-05
?
莫回無

TA貢獻1865條經驗 獲得超7個贊

final = ids[-1] if len(ids) > 0 else []

這將處理眼前的問題。請通過類材料或教程的工作有點多為個人技術。例如,你的那句ids if []犯規”做你(現在)似乎認為:它并沒有檢查ids是否為空表-它所做的就是看空列表是否是‘truthy’,和一個空列表評估為False


查看完整回答
反對 回復 2021-08-05
  • 3 回答
  • 0 關注
  • 215 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號