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

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

如何檢查字典列表中是否存在值?

如何檢查字典列表中是否存在值?

倚天杖 2021-10-19 14:42:44
我在我的 Django 應用程序中使用會話。request.session['permissions']結構如下。每個值的鍵都相同?;旧纤且粋€字典列表[{'mykey': 'value1'}, {'mykey': 'value2'}, {'mykey': 'value3'},  {'mykey': 'value4'}, {'mykey': 'value5'}, {'mykey': 'value6'}]permissions = request.session['permissions']現在我想檢查value4里面是否存在permissions。我不知道如何檢查價值。每當我試圖訪問這樣的價值時permissions.mykey它給了我錯誤'list' object has no attribute 'mykey'我想做類似的事情permissions = request.session['permissions']if value not in permissions:   print('Value is inside list')
查看完整描述

3 回答

?
慕姐8265434

TA貢獻1813條經驗 獲得超2個贊

使用 for 循環獲取單個字典,然后檢查鍵


for perm in permissions: 

    if value in perm.values():

        print('Value is inside list')


查看完整回答
反對 回復 2021-10-19
?
阿波羅的戰車

TA貢獻1862條經驗 獲得超6個贊

我認為您可以使用filter這樣做:


permissions = request.session['permissions']

exists = list(filter(lambda x: x.get('mykey') == 'value4', permissions))  # for python 3


# for python2

#  exists = filter(lambda x: x.get('mykey') == 'value4', permissions)


if len(exists) > 0:

   print('value4 exists')


查看完整回答
反對 回復 2021-10-19
?
江戶川亂折騰

TA貢獻1851條經驗 獲得超5個贊

正如其他答案所指出的那樣。問題是您試圖在列表對象上使用字典訪問器。由于permissions是字典列表,因此您需要檢查列表中的所有字典以查找value4. 這可以通過多種方式完成,在我看來,最 Pythonic 的方式是使用列表理解,例如[value4 == d for d['mykey'] in permissions]


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

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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