2013-09-23 38 views
4
In [54]: User 
Out[54]: {0: {'uid': ' rpatil\n'}, 1: {}} 

In [55]: User[0] 
Out[55]: {'uid': ' rpatil\n'} 

In [56]: User[1] 
Out[56]: {} 

In [57]: if User[1] == '': 
    ....:  print 'Null' 
    ....: 

In [58]: 

那麼如何檢查值多字典如果快譯通值爲null

我已經試過跟蹤鏈接,但無法工作 None value in python dictionary

+0

如果'用戶[1]''是0'。你想檢查只是空的字典嗎? –

回答

9

空字典爲falsey空。只需使用if not dic即可。

>>> testDict = {} 
>>> if not testDict: 
     print "Empty" 


Empty 

所以,在你的代碼。

>>> User = {0: {'uid': ' rpatil\n'}, 1: {}} 
>>> if not User[1]: 
     print "NULL" 


NULL 
+1

謝謝......它的工作...... –

+3

我不會推薦這個,因爲有太多其他的東西都是假的。 – kindall

+1

@Surkit Kalra - 你的方式我認爲是更多Pythonic,但我覺得我的方式更清晰...想法? – RyPeck

5

空詞典== {}。你也可以測試它是否是空字典。

>>> t = {} 
>>> t == None 
False 
>>> t == {} 
True 

與您的代碼。

>>> User = {0: {'uid': ' rpatil\n'}, 1: {}} 
>>> if User[1] == {}: 
     print "NULL" 

NULL 
1

User[1]None - 它的值是空的字典:

>>> User[1] == {} 
True 

你需要有:

>>> User = {0: {'uid': ' rpatil\n'}, 1: None}