[Tutor] for loop

Ewald Ertl ewald.ertl at hartter.com
Tue Apr 19 09:29:02 CEST 2005


Hi, 

I've slightly modified the for-Loop  containing the "else" and not the if: 

>>> x = [[1,2,3],[2,4,6],[8,4,5,6],[9,8,7]]
>>> for num in x:
...     if 5 in num:
...             break
... else:
...     print "YES"
... 
>>>

second test: 

>>> x = [[1,2,3],[2,4,6],[8,4,6],[9,8,7]]
>>> for num in x:
...     if 5 in num:
...             break 
... else:
...     print "YES"
... 
YES
>>> 

The else-Part is only executed, when the for ( or while) - loop is left regularly, without 
a break-statement. 

HTH Ewald 

on Tue, 19 Apr 2005 11:51:39 +0800  Ching-Yi Chan <m92507 at stumail.nutn.edu.tw> wrote :
---------------------------------------------------------------------------------------------

Ching-Yi Chan > *Ron A*  /Wed Jan  7 18:41:15 EST 2004/
Ching-Yi Chan > 
Ching-Yi Chan > I'm experimenting and would like 'yes' to be printed only if 5 is not in
Ching-Yi Chan > the list, but I want to look in each list. This prints out two yeses.
Ching-Yi Chan > How do I get it to print just one 'yes'?
Ching-Yi Chan > 
Ching-Yi Chan > x = [[1,2,3],[2,4,6],[8,4,5,6],[9,8,7]]
Ching-Yi Chan > 
Ching-Yi Chan > for num in x:
Ching-Yi Chan >     if 5 in num:
Ching-Yi Chan >         break
Ching-Yi Chan >     else:
Ching-Yi Chan >         print 'yes'  
Ching-Yi Chan > 
Ching-Yi Chan > --------------------------------------------------------------------------
Ching-Yi Chan > 
Ching-Yi Chan > Hi, I read the code and consider for a while, you can try it :
Ching-Yi Chan > 
Ching-Yi Chan > x = [[1,2,3],[2,4,6],[8,4,5,6],[9,8,7]]
Ching-Yi Chan > print [ e for e in x if 5 in e]
Ching-Yi Chan > 
Ching-Yi Chan > 
Ching-Yi Chan > _______________________________________________
Ching-Yi Chan > Tutor maillist  -  Tutor at python.org
Ching-Yi Chan > http://mail.python.org/mailman/listinfo/tutor
Ching-Yi Chan > 


------------------- end ----------------------



More information about the Tutor mailing list