முக்கிய உள்ளடக்கத்திற்குச் செல்லவும்
தொகுதி 2 · பாடம் 3 இன் 4பாடத்திட்டத்தில் 7/36~10 min
தொகுதி பாடங்கள் (3/4)

உடைக்கவும், தொடரவும் மற்றும் பிற சுழல்களில்

லூப்பின் உள்ளே (for மற்றும் while) நீங்கள் சாதாரண ஓட்டத்தை மாற்றலாம் மூன்று கட்டுமானங்கள்:

  • break — லூப்பில் இருந்து வெளியேறும் உடனடியாக.
  • continue — தவிர்த்து உடலின் மற்ற பகுதிகளை அடுத்த மறு செய்கைக்குத் தாவுகிறது.
  • else (லூப்பில்) — லூப் ** இல்லாமல்** ஒரு break முடிவடையும் போது செயல்படுத்தப்படும்.

break

Python
for n in [3, 7, 11, 4, 9]:
    if n % 2 == 0:
        primo_pari = n
        break
primo_pari  # 4

break கூடிய விரைவில் லூப்பை நிறுத்துகிறது. breakக்குப் பிறகு எதுவும் தற்போதைய மறு செய்கையின் உடல் செயல்படுத்தப்படவில்லை.

continue

Python
risultati = []
for n in range(1, 11):
    if n % 2 == 0:
        continue   # skip evens
    risultati.append(n * n)
risultati  # [1, 9, 25, 49, 81]

continue ஐ "அடுத்த மறு செய்கைக்குச் செல்" என நினைக்கவும். இது பொருட்களை வடிகட்ட பயன்படுகிறது மேலும் ஒரு உள்தள்ளல் நிலை சேர்க்காமல்.

else ஆன் தி லூப்பில் (பைத்தோனிக் இடியம்)

ஒரு பைதான் தனித்தன்மை: சுழல்கள் ஒரு else ஐக் கொண்டிருக்கலாம். லூப் நிறுத்தப்பட்டது இயற்கையாக (break இல்லாமல்). இது தேடல்களுக்கு ஏற்றது:

Python
target = 7
for n in [2, 4, 6, 8]:
    if n == target:
        trovato = True
        break
else:
    trovato = False
trovato  # False

அதை பின்வருமாறு படிக்கவும்: "பட்டியலில் உள்ள ஒவ்வொரு nக்கும்; நீங்கள் break கிளையை எடுத்துக் கொண்டால், தவிர்க்கவும் மற்றவை; இல்லையெனில் மற்றவற்றை இயக்கவும்".

உள்ளமைக்கப்பட்ட சுழல்கள்: இடைவெளியானது உட்புறத்திலிருந்து மட்டுமே வெளியேறும்

Python
for x in range(3):
    for y in range(3):
        if x == y == 1:
            break
        print(x, y)

break for y இலிருந்து வெளியேறுகிறது, for x இல் அல்ல. இரண்டிலிருந்தும் வெளியேற நீங்கள் பயன்படுத்த வேண்டும் கொடி அல்லது செயல்பாடு + return.

அசாதாரண வளையம்...மற்றும் கட்டமைக்க

பைத்தானில், for மற்றும் while சுழல்கள் இரண்டும் விருப்பமான else உட்பிரிவைக் கொண்டிருக்கும். else தொகுதியானது ** லூப் சாதாரணமாக முடிந்தால் மட்டுமே** (அதாவது break அறிக்கையை சந்திக்காமல்) செயல்படுத்தப்படும். இது தேடல் அல்காரிதங்களுக்கு மிகவும் உதவியாக இருக்கும் (எ.கா. "ஒரு உறுப்பைத் தேடுங்கள்: கிடைத்தால், உடைக்கவும்; இல்லையெனில், அது கிடைக்கவில்லை என்று தெரிவிக்கவும்").

நீங்களே முயற்சி செய்து பாருங்கள்

உடற்பயிற்சி#python.m2.l3.e1
முயற்சிகள்: 0ஏற்றுகிறது…

`எண்கள் = [10, 15, 20, 25, 30, 35]` என்ற பட்டியலில் கொடுக்கப்பட்டால், 7 ஆல் வகுபடும் முதல் எண்ணைக் கண்டறிந்து அதை `முடிவு` என ஒதுக்கவும். எதுவும் இல்லை என்றால், -1ஐ ஒதுக்கவும்.

எடிட்டரை ஏற்றுகிறது…
குறிப்பைக் காட்டு

பட்டியலில் 7 ஆல் வகுபடும் முதல் (மற்றும் ஒரே) ஒன்று 35 ஆகும்.

3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்

மதிப்பாய்வு பயிற்சி

உடற்பயிற்சி#python.m2.l3.e2
முயற்சிகள்: 0ஏற்றுகிறது…

1 முதல் 20 வரையிலான ஒற்றைப்படை எண்களைக் கொண்டு `ஒற்றை_எண்கள்` பட்டியலை உருவாக்கவும் (1, 21) லூப் ஓவர் லூப்பைப் பயன்படுத்தி, சமன்களைத் தவிர்க்கவும்.

எடிட்டரை ஏற்றுகிறது…
குறிப்பைக் காட்டு

n சமமாக இருந்தால், தொடரவும்; இல்லையெனில் இணைக்கவும்.

3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்

கூடுதல் சவால்

உடற்பயிற்சி#python.m2.l3.e3
முயற்சிகள்: 0ஏற்றுகிறது…

Given the list `numbers = [7, 11, 14, 21, 25]`, write a `for` loop to find the first number that is divisible by 7 and also strictly greater than 10. When you find it, store it in `found` and exit the loop using `break`. Finally, evaluate `found`.

எடிட்டரை ஏற்றுகிறது…
குறிப்பைக் காட்டு

Inside the loop, check if num % 7 == 0 and num > 10:, assign it to found and trigger break.

3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்