2014-10-10 9 views
-3

С этим:список Итерация в кортеже

a = [(string,[(string,integer)])] 

Я хочу сделать

for i in range(len(a)): 
    for j in range(len(a[i][1])): 
     var = a[i][1][1] # get the integer value 

но без петель (функционального программирования).

Может ли кто-нибудь дать мне руку? Заранее спасибо.

+0

Что такое «циклы»? – mdurant

+0

петли, извините. исправлено. – lcsfelix

+0

Зависит от того, что '# stuff' есть. – khelwood

ответ

0

На будущее, это сработало:

def main(lst): 
    if lst == [] 
     return 
    aux(lst[0][1]) 
    return main(lst[1:]) 

def aux(lst): 
    if lst == [] 
     return 
    x = lst[0][0] # I actually wanted the string, so I could get an index in another list, 
        # but lst[0][1] gives the int 
    # stuff I wanted to do # 
    return aux(lst[1:]) 

все равно спасибо всем, что ответили.

1

Я supose вы хотите сделать что-то вроде этого:

def ListIterator(somelist): 
    if len(somelist) == 0: 
     return 
    elif somelist[0] == isinstance(somelist,list): 
     ListIterator(somelist[0]) 
    else: 
     #dostuff 
+0

Спасибо за ваш ответ. Но даже если бы я не мог использовать это как решение, не было бы это 'elif isinstance (somelist [0], list):'? – lcsfelix

Смежные вопросы