2015-11-19 2 views
0

У меня есть программа для печати элементов из списков в списках определенным образом. Вот этот кусок коды:Как сделать цикл в цикле вернуться к первому циклу

for y in range(0,5):  
    print '\n' 
    for x in tableau: 
      if y < len(x): 
      print x[y], 
      else : 
       print ' ' 

То, что я хочу, чтобы, если заявление вернуться к внутренней петле (для й в таблицах) после того, как он выполняет печать «» в еще части, если заявлении. Есть ли способ сделать это?

+6

Вы попробовали 'break'? – Delgan

+0

Что вы хотите, кажется, неясно, хотите ли вы выйти из внутреннего цикла в случае, если он выполняет «печать»? –

+0

да и вернитесь к значению x в таблице. – compcrk

ответ

1
for y in range(0,5):  
print '\n' 
for x in tableau: 
     if y < len(x): 
     print x[y], 
     else : 
      print ' ' 
      break 

сломается из внутренней для и обратно во внешнюю для, после печати execu Тед. Это напечатает «\ n», а затем вернется во внутреннее пространство, и я верю, что вы спрашиваете?

1

Поскольку я не очень понимаю, что вам нужно, то я предлагаю вам 2 решения
Первой один: печать «» вместо несуществующего элемента списка (3 раза, если Len (х) == 2)

for x in tableau: 
    print '\n' 
    for y in x: 
     print y 
    for y in range(5 - len(x)) 
     print ' ' 

Второй один: печать «» всегда в конце списка

for x in tableau: 
    print '\n' 
    for y in x: 
     print y 
    print ' ' 
1

Как было предложено Delgan, ответ staightforward - вы должны использовать ключевое слово break:

for y in range(0,5):  
    print '\n' 
    for x in tableau: 
      if y < len(x): 
      print x[y], 
      else : 
       print ' ' 
       break 

Ключевое слово перерыва выходит самый внутренний цикл.