2015-08-15 15 views
1

這裏是我的字典:如何讓非空值的位置在一本字典在Python

d={"1":"", "2":"", "3":"", "4":"rock" , "5":"" , "6":"" ,"7":"paper","8":""} 

我想鍵和值,其值是非空的位置。 我試着用:

d.items() 

輸出:

[('1', ''), ('3', ''), ('2', ''), ('5', ''), ('4', 'rock'), ('7', 'paper'), ('6', ''), ('8', '')] 

我希望我的輸出是:

4 rock 
7 paper 

請幫助。

回答

2

是什麼?

d={"1":"", "2":"", "3":"", "4":"rock" , "5":"" , "6":"" ,"7":"paper","8":""} 

for key, value in d.items(): 
    if value: 
     print(key, value) 
+0

感謝ü洙多..它的工作。 –

4
>>> d = {"1":"", "2":"", "3":"", "4":"rock" , "5":"" , "6":"" ,"7":"paper","8":""} 
>>> print {k: v for k, v in d.items() if v} 
{'7': 'paper', '4': 'rock'} 
0

這應做到:

from __future__ import print_function 

data = { 
    '1': '', '2': '', '3': '', '4': 'rock', 
    '5': '', '6': '', '7': 'paper', '8': '', 
    } 

new_data = {k: v for k, v in data.items() if v} 

for k, v in new_data.items(): 
    print(k, v)