我有以下字典:

dict = {
       'field1': ('foo','bar'),
       'field2': ('spam',''),
       'field3': ['apples', 'oranges']
       }


并且我想将值写在列表中,但前提是非空:

list = ['foo', 'bar', 'apples', 'oranges']


我可以使用dict.values()吗?如何检查元组的第二个元素为非空?

最佳答案

您可以使用列表理解:

dic = {
   'field1': ('foo','bar'),
   'field2': ('spam',''),
   'field3': ['apples', 'oranges']
   }
new_result = [i for b in dic.values() for i in b if all(b)]


输出:

['foo', 'bar', 'apples', 'oranges']

09-30 21:19