我有一個這樣的文件:Python列表訪問字典直接
>>> k = {'finance_pl':{'S':{'2008':45,'2009':34}}}
訪問普通的方法是:
>>> k['finance_pl']['S']
{'2008': 45, '2009': 34}
但是,在我的情況下,終端用戶可以給我輸入爲finance_pl.S
我可以拆分這一點,查閱字典是這樣的:
>>> doc_list = doc.split('.')
>>> k[doc_list[0]][doc_list[1]]
{'2008': 45, '2009': 34}
但是,我不想這樣做,因爲字典結構可能會改變和 用戶可以給這樣的東西finance_pl.new.S
而不是k['finance_pl']['S']
或k[doc_list[0]][doc_list[1]]
。 (例如:如果輸入是finance_pl.new.S
,我應該可以將這個.split('.')
方法應用於用戶輸入並直接應用)。我需要一些東西來直接應用用戶輸入(例如:如果輸入是finance_pl.new.S
,我應該能夠將這個.split('.')
方法應用於用戶輸入並直接應用)。
什麼是優雅的方式來做到這一點?
不知道我是否理解正確的問題,即是否有更多的,但我想你應該看看這個[相關問題](http://stackoverflow.com/q/12414821/1639625) –
我回答了類似的問題[這裏](http://stackoverflow.com/questions/14923465/python-how-to-return-a-default-value/14 923509#14923509)我認爲它會幫助你。此外,請參閱[喬恩的答案](http://stackoverflow.com/a/17787473/1561176)這是我將如何回答你的問題。 –
是的,@InbarRose你是對的。這正是我需要的。 –