我知道這是純粹簡單的事情,但我無法圍繞它來包裹我的頭。我想在下面的字典/列表中訪問歌曲「日出」。用Python做這件事的正確方法是什麼?Python - 從字典裏面的字符串獲取字符串
{"Player":
{"Playlist":
[
{"Song" : "Foo", "Album" : "Bar"},
{"Song" : "Sunrise", "Album", : "Random"}
]
}
}
我知道這是純粹簡單的事情,但我無法圍繞它來包裹我的頭。我想在下面的字典/列表中訪問歌曲「日出」。用Python做這件事的正確方法是什麼?Python - 從字典裏面的字符串獲取字符串
{"Player":
{"Playlist":
[
{"Song" : "Foo", "Album" : "Bar"},
{"Song" : "Sunrise", "Album", : "Random"}
]
}
}
d = {"Player":
{"Playlist":
[
{"Song" : "Foo", "Album" : "Bar"},
{"Song" : "Sunrise", "Album", "Random"}
]
}
}
for song in d['Player']['PlayList']:
print song
打印:
{'Album': 'Bar', 'Song': 'Food'}
{'Album': 'Random', 'Song': 'Sunrise'}
要訪問的列表的元素在字典中,在這種情況下,值Sunrise
的Song
內:
for song in d['Player']['Playlist']:
if song['Song'] is 'Sunrise':
#do thing with song here
print song
打印:
{'Album': 'Random', 'Song': 'Sunrise'}
在Python中,Dictionary可以包含給定鍵的許多不同類型的值。打破你的字典,這就是一切居然是:
{"Player":
{"Playlist":
[
{"Song" : "Foo", "Album" : "Bar"},
{"Song" : "Sunrise", "Album", "Random"}
]
}
}
d['Player']:
結果:{'Playlist': [{'Album': 'Bar', 'Song': 'Food'}, {'Album': 'Random', 'Song': 'Sunrise'}]}
關鍵是一個字符串,其值是播放列表的字典。
d['Player']['Playlist']:
結果:{'Playlist': [{'Album': 'Bar', 'Song': 'Food'}, {'Album': 'Random', 'Song': 'Sunrise'}]}
關鍵是Playlist
,該值是dict
的list
ionaries。
d['Player']['Playlist'][0]
結果:{'Album': 'Bar', 'Song': 'Food'}
這是一個列表訪問器,它訪問的第一個元素列表中(在這種情況下,保持所述Album
的dict
和Song
)
d['Player']['Playlist'][0]['Album']:
結果: '酒吧'
訪問詞典與播放列表內的列表的第一個元素中的關鍵Album
值。
或者拼出來,如果你是一個Perl的傢伙,你有Player
s表示有Playlists
與它裏面的歌曲詞典(樂曲數據)列表的字典詞典。
哇,輝煌的答案!感謝您花時間寫出來! – Dustin
如果d
是你的字典,然後
d['Player']['Playlist'][1]['Song']
你想* *僅訪問歌曲日出?請記住關鍵是「歌曲」和「日出」是價值。 –
詢問代碼的問題必須證明對所解決問題的最小理解。包括嘗試解決方案,爲什麼他們沒有工作,以及預期的結果。 – Marcin