2013-04-08 4 views
0

Мне нужна помощь, чтобы перебрать список списков. Я все еще изучаю Python.LOOPING LISTS of Lists

У меня есть список целых чисел, и эти целые числа представляют собой список из более целых чисел.

Пример:

itemWalmart= "food","bread" 
itemCostco= "furniture","electronics" 
superMarket= walmart,costco 

мне нужно сделать петлю с перечислением элементов + superMarket.Name, Моя проблема в том, когда мы добавим более супер рынков и других элементов списка.

Я хочу сделать цикл, чтобы он делал это, даже если список растет, поэтому он проходит через каждый.

пример списка большего:

itemWalmart= "food","bread" 
itemCostco= "furniture","electronics" 
itemSoriana= "milk","chocolate" 
superMarket= itemWalmart,itemCostco,itemSoriana 

, что я пытался это было:

itemWalmart= "food","bread" 
itemCostco= "furniture","electronics" 
superMarket= itemWalmart,itemCostco 

print superMarket 

for i in superMarket: 
    print i + superMarket 

ПОЛУЧИТЬ ЭТО:

# (('food', 'bread'), ('furniture', 'electronics')) 
# ('food', 'bread', ('food', 'bread'), ('furniture', 'electronics')) 
# ('furniture', 'electronics', ('food', 'bread'), ('furniture', 'electronics')) 

И я хочу, чтобы получить это:

"food","bread" , itemWalmart 
"furniture","electronics" , itemCostco 

THANKS

ответ

5

Вам будет проще использовать dictionary.

markets = {} 

markets['Walmart'] = "food","bread" 
markets['Costco'] = "furniture","electronics" 

for k,v in markets.iteritems(): #use items if you are using python 3x 
    print k,v 
+0

кажется, лучше всего подходит к тому, что для меня, как хорошо ... но это должно быть довольно„легко“либо путь ... –

1
itemWalmart= "food","bread" 
itemCostco= "furniture","electronics" 
superMarketItems= itemWalmart,itemCostco 
superMarketNames = "walmart","costco" 

for items,name in zip(superMarketItems,superMarketNames): 
    print "Items:",items," [email protected]",name 
0

К сожалению, вы не можете сделать это с помощью списков. itemWalmart - это имя переменной и не привязано к переменной. (и не извлекается, тем более, что он был скопирован до i).

Я предлагаю использовать словарь:

markets={} 
markets['walmart']=('food','bread') 
markets['costco']='furniture,electronics' 

for key,value in markets.iteritems(): 
    print (key,value) 

Если вы действительно хотите использовать списки, а затем сохранить имя на рынке со списком.

itemWalmart= "food","bread","itemWalmart" 
itemCostco= "furniture","electronics","itemCostco" 
superMarket= itemWalmart,itemCostco 

print superMarket 

for i in superMarket: 
    print i 
0

Я не знаю, если это будет работать, но попробовать это, и я не знаю питон, но я думаю, что эта логика будет работать

для г в Супермаркете: для й в СУПЕРМАРКЕТЕ [я]: печать сУПЕРМАРКЕТ [я] [х] печати сУПЕРМАРКЕТ

я не уверен, как добавить "в питона для вторя