background image

[0, 1, 2, 3, 4]

Η   εντολή   break,   όπως   και   στη   C,   βγαίνει   εκτός   του 

εσωτερικότερου   βρόχου   for   ή   while,   από   τον   οποίο 
περικλείεται.

Οι   δηλώσεις   Loop   μπορεί   να   έχουν   έναν   όρο   else,   να 

εκτελείται όταν ο βρόχος τερματίζει με εξάντληση της λίστας 
(με for) ή όταν η κατάσταση γίνεται ψευδής (με while), αλλά 
όχι   όταν   ο   βρόχος   τερματίζεται   με   την   εντολή   break.   Αυτό 
επεξηγείται από τον επόμενο βρόχο, o οποίow ψάχνει για τους 
πρώτους αριθμούς:

>>> 

for

 n 

in

 

range

(

2

10

):

... 

    

for

 x 

in

 

range

(

2

, n):

... 

        

if

 n 

%

 x 

==

 

0

:

... 

            

print

(n, 

'equals'

, x, 

'*'

, n

//

x)

... 

            

break

... 

    

else

:

... 

        

# loop fell through without finding a factor

... 

        

print

(n, 

'is a prime number'

)

...

2 is a prime number
3 is a prime number
4 equals 2 * 2
5 is a prime number
6 equals 2 * 3
7 is a prime number
8 equals 2 * 4
9 equals 3 * 3

Ο παραπάνω κώδικας είναι σωστός. Κοιτάξτε προσεκτικά: 

Η else ανήκει στον βρόχο for και όχι στην if. 

Η δήλωση continue, έχει επίσης δανειστεί από την C και 

συνεχίζει με την επόμενη επανάληψη του βρόχου:

>>> 

for

 num 

in

 

range

(

2

10

):

... 

    

if

 num 

%

 

2

 

==

 

0

:

... 

        

print

(

"Found an even number"

, num)

... 

        

continue

http://arch.icte.uowm.gr

 - A Mini greek notebook for Learning Python Programming 

19