簡體   English   中英

從鍵/值對獲取列表值

[英]Getting a list value from key/value pair

如果我有一個包含鍵/值對的列表,我如何獲得鍵的值?

我正在使用此代碼段:

>>> items = {'fees':[('status','pending'), ('timeout',60)], 'hostel':[('status',
 'pending'), ('timeout','120')]}
>>> print [items[i] for i in items.keys()]
[[('status', 'pending'), ('timeout', '120')], [('status', 'pending'), ('timeout'
, 60)]]
>>>

我期待這個:

# get timeout. I know this line is wrong
timeout = items.get(i)

# Put the transaction item in a queue at a specific timeout
# period

transaction_queue(i, block, timeout)

def transaction_queue(item, block=False, timeout):
    return queue.put(item, block, timeout)

謝謝你的幫助。

直到寫作的7個小時我才能回答。

所以,答案是:

>>> for key, value in items.iteritems():
...     for val in value:
...             print "\t{0} : {1}".format(val[0], val[1])
...
        status : pending
        timeout : 120
        status : pending
        timeout : 60
>>>

感謝Vincent Vande Vyvre

我不確定我完全理解你的問題,但簡單的解決方案可能是:

>>> dict(items['fees'])['status']
'pending'

您已經在“print”語句中打印了值,因此我假設您只想打印鍵的名稱

對print語句的這種修改將打印鍵名:

print [i for i in items.keys()]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM