Get started learning Python with DataCamp's free Intro to Python tutorial. Learn Data Science by completing interactive coding challenges and watching videos by expert instructors. Start Now!
This site is generously supported by DataCamp. DataCamp offers online interactive Python Tutorials for Data Science. Join 11 million other learners and get started learning Python for data science today!
Good news! You can save 25% off your Datacamp annual subscription with the code LEARNPYTHON23ALE25 - Click here to redeem your discount
Ciklusok
There are two types of loops in Python, for and while.
The "for" loop
A for ciklusok végigiterálnak egy adott sorozaton. Itt van egy példa:
primes = [2, 3, 5, 7]
for prime in primes:
print(prime)
A for ciklusok számok sorozatán is végigiterálhatnak a "range" és "xrange" függvények használatával. A különbség a range és xrange között az, hogy a range függvény egy új listát ad vissza a megadott tartomány számaival, míg az xrange egy iterátort ad vissza, ami hatékonyabb. (A Python 3 a range függvényt használja, amely az xrange-hez hasonlóan működik). Vegyük figyelembe, hogy a range függvény nullától indul.
# Kinyomtatja a számokat 0,1,2,3,4
for x in range(5):
print(x)
# Kinyomtatja a számokat 3,4,5
for x in range(3, 6):
print(x)
# Kinyomtatja a számokat 3,5,7
for x in range(3, 8, 2):
print(x)
"while" loops
A while ciklusok addig ismételnek, amíg egy bizonyos logikai feltétel teljesül. Például:
# Kinyomtatja a számokat 0,1,2,3,4
count = 0
while count < 5:
print(count)
count += 1 # Ez ugyanaz, mint a count = count + 1
"break" és "continue" utasítások
A break a for vagy while ciklusból való kilépésre szolgál, míg a continue a jelenlegi blokk kihagyására és a "for" vagy "while" utasításhoz való visszatérésre használható. Néhány példa:
# Kinyomtatja a számokat 0,1,2,3,4
count = 0
while True:
print(count)
count += 1
if count >= 5:
break
# Csak a páratlan számokat nyomtatja ki - 1,3,5,7,9
for x in range(10):
# Ellenőrzi, hogy x páros-e
if x % 2 == 0:
continue
print(x)
Használhatunk "else" ágat ciklusokhoz?
Ellentétben a C, CPP stb. nyelvekkel, használhatunk else ágat a ciklusokhoz. Amikor a "for" vagy "while" utasítás ciklusfeltétele meghiúsul, akkor az "else" ág kódja kerül végrehajtásra. Ha egy break utasítás fut le a for ciklusban, akkor az "else" rész kimarad. Vegyük figyelembe, hogy az "else" rész akkor is végrehajtódik, ha van continue utasítás.
Íme néhány példa:
# Kinyomtatja a számokat 0,1,2,3,4, majd kiírja "A count értéke elérte az 5-öt"
count=0
while(count<5):
print(count)
count +=1
else:
print("A count értéke elérte a %d-et" %(count))
# Kinyomtatja a számokat 1,2,3,4
for i in range(1, 10):
if(i%5==0):
break
print(i)
else:
print("ez nem jelenik meg, mert a for ciklus megszakítás miatt leállt, nem pedig feltétel elbukása miatt")
Exercise
A numbers lista összes páros számán végigiterál és azokat kiírja abban a sorrendben, ahogy megérkeznek. Ne írjon ki semmilyen számot, ami a szekvenciában a 237 után következik.
numbers = [
951, 402, 984, 651, 360, 69, 408, 319, 601, 485, 980, 507, 725, 547, 544,
615, 83, 165, 141, 501, 263, 617, 865, 575, 219, 390, 984, 592, 236, 105, 942, 941,
386, 462, 47, 418, 907, 344, 236, 375, 823, 566, 597, 978, 328, 615, 953, 345,
399, 162, 758, 219, 918, 237, 412, 566, 826, 248, 866, 950, 626, 949, 687, 217,
815, 67, 104, 58, 512, 24, 892, 894, 767, 553, 81, 379, 843, 831, 445, 742, 717,
958, 609, 842, 451, 688, 753, 854, 685, 93, 857, 440, 380, 126, 721, 328, 753, 470,
743, 527
]
# your code goes here
for number in numbers:
numbers = [
951, 402, 984, 651, 360, 69, 408, 319, 601, 485, 980, 507, 725, 547, 544,
615, 83, 165, 141, 501, 263, 617, 865, 575, 219, 390, 984, 592, 236, 105, 942, 941,
386, 462, 47, 418, 907, 344, 236, 375, 823, 566, 597, 978, 328, 615, 953, 345,
399, 162, 758, 219, 918, 237, 412, 566, 826, 248, 866, 950, 626, 949, 687, 217,
815, 67, 104, 58, 512, 24, 892, 894, 767, 553, 81, 379, 843, 831, 445, 742, 717,
958, 609, 842, 451, 688, 753, 854, 685, 93, 857, 440, 380, 126, 721, 328, 753, 470,
743, 527
]
# your code goes here
for number in numbers:
if number == 237:
break
if number % 2 == 1:
continue
print(number)
test_object("number", undefined_msg="Define a object `number` using the code from the tutorial to print just the desired numbers from the exercise description.",incorrect_msg="Your `number` object is not correct, You should use an `if` statement and a `break` statement to accomplish your goal.")
success_msg("Great work!")
This site is generously supported by DataCamp. DataCamp offers online interactive Python Tutorials for Data Science. Join over a million other learners and get started learning Python for data science today!