有没有一种方法可以检查字典是否有一个键,以及该键的值是否在一次传递中为None?

2021-09-17 00:17:31 发布

您现在位置:Python中文网/ 问答频道 /正文

sampleDict = {'1':None}

要检查是否有密钥存在,如果没有,我必须这样做

if '1' in sampleDict:
    if sampleDict['1'] is not None:
        #do something

有没有一种更像Python的方法在一次传球中做到这一点?你知道吗

2条回答
网友
1楼 ·

如果我认为这个问题的意思和它说的完全一样(“检查一个键是否存在,如果它不是无”),那么您需要dict.keys()。你知道吗

必须检查密钥是否为not None

if key is not None:
  do_something()


它的存在:

if key is not None and key in my_dict.keys(): 
  do_something()
网友
2楼 ·

您的代码:

if '1' in sampleDict:
    if sampleDict['1'] is not None:
        #do something

可以简化为:

if sampleDict.get('1') is not None:
    #do something

它将第一个if子句包含在dict.get()返回Noneif not found的事实中。如果找到键,dict.get()返回与[]相同的值,则它包含第二个if子句。你知道吗

相关问题