[英]how to check values if it has a like/same key in a dict in python?
如果鍵的dict
有'extra_'
,如何檢查值?
這是我所做的:
>>> dict = { u'last_name': [u'hbkjh'], u'no_of_nights': [u'1'], u'check_in': [u'2012-03-19'], u'no_of_adult': [u'', u'1'], u'csrfmiddlewaretoken': [u'05e5bdb542c3be7515b87e8160c347a0'], u'memo': [u'kjhbn'], u'totalcost': [u'1800.0'], u'product': [u'4'], u'exp_month': [u'1'], u'quantity': [u'2'], u'price': [u'900.0'], u'first_name': [u'sdhjb'], u'no_of_kid': [u'', u'0'], u'exp_year': [u'2012'], u'check_out': [u'2012-03-20'], u'email': [u'ebmalifer@agile.com.ph'], u'contact': [u'3546576'], u'extra_test1': [u'jknj'], u'extra_test2': [u'jnjl'], u'security_code': [u'3245'], u'charged': [u'200.0']}
>>> for x in dict:
... x
...
u'totalcost'
u'check_in'
u'last_name'
u'extra_test2'
u'memo'
u'extra_test1'
u'product'
u'email'
u'charged'
u'no_of_nights'
u'no_of_kid'
u'contact'
u'exp_month'
u'first_name'
u'no_of_adult'
u'csrfmiddlewaretoken'
u'exp_year'
u'check_out'
u'price'
u'security_code'
u'quantity'
>>>
如果dict
有像'extra_'
這樣'extra_'
鍵,這就是我想要的輸出:
u'extra_test1' : [u'jknj']
u'extra_test2' : [u'jnjl']
提前致謝 ...
In [4]: dict((k,v) for k,v in d.items() if k.startswith('extra_'))
Out[4]: {u'extra_test1': [u'jknj'], u'extra_test2': [u'jnjl']}
d
是您的字典。 我已對其進行了重命名,以免影響內置功能 。
使用字典理解:
>>> {k: v for k,v in d.iteritems() if k.startswith('extra_')}
{u'extra_test1': [u'jknj'], u'extra_test2': [u'jnjl']}
唯一的方法是遍歷密鑰並對其進行測試:
for key in dict_.iterkeys():
if key.startswith('extra_'):
...
for k in your_dict:
if k.startswith('extra_'):
print '%r : %r' % (k, your_dict[k])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.