2013-04-22 2 views
0

я следующая строка, и я хочу, чтобы напечатать список объектов:Как распечатать список в словаре на Python?

{u'categories': [u'Food', u'Grocery']} 

Я использовал следующие оды, но не работает:

d = {u'categories': [u'Food', u'Grocery']}       
print "Categories: " + d['categories']      
print "Categories: " + d['categories[0]'] 

Спасибо!

+1

Голосование, чтобы закрыть как слишком локализованный – jamylak

+3

[diveintopython] (HTTP: // WWW. diveintopython.net/toc/index.html) –

ответ

4
>>> d = {u'categories': [u'Food', u'Grocery']} 
>>> print "Categories: " + ', '.join(d['categories']) 
Categories: Food, Grocery 
>>> print "Categories: " + d['categories'][0] 
Categories: Food 
+0

Он работает, спасибо! – Mahdi

+0

это то же самое, что и печать float и integer в словаре? – Mahdi

+2

@Mahdi Нет, они должны быть преобразованы в 'str' для печати. Пример: 'print 'Numbers:" +', '.join (map (str, d [' numbers '])) '. Я точно не знаю, как вам нужно отформатировать его, поскольку вы не указали его в вопросе. Попробуйте использовать некоторые из этих параметров для себя – jamylak

3

Если Вы желаете напечатать категории с последующим названием каждой категории, то:

for category in your_dict['categories']: 
    print 'Categories:', category 
+0

это просто напечатать первый пункт! – Mahdi

+1

@ Махди, тогда я могу предположить, что ответ Джамилака ближе к тому, чего вы хотите достичь тогда ... –

+0

@Mahdi Также печатает другие предметы на разных строках. Если вы добавите конечную запятую 'print 'Категории:', category,' она будет печатать их на одной строке, пробел будет разделен – jamylak