Werrej[Aħbi][Uri]
Nibdew billi nifhmu while loops u navvanzaw billi nibnu logħba interessanti ta' guessing f'Python.
Il-kunċetti preċedenti kollha se jidħlu fis-seħħ għalhekk ser nirrakkomandalek tirrevedi lekċers preċedenti qabel timxi aktar.
Ejja nimxu fiha.
Filwaqt Loops
Se nitgħallmu kif nużaw while loops f'python. Aħna nużaw while loops biex tesegwixxi blokka ta 'kodiċi diversi drabi u ħafna drabi huma utli fil-bini ta' programmi u logħob interattivi.
Allura, ejja nibdew bl-affarijiet bażiċi. Biex tikteb linja while, niktbu kundizzjoni wara l-funzjoni "while".
Ejja nintroduċu varjabbli "i" u issettjaha għal 1
i = 1
while i <= 5:
print(i)
Issa, "i" se tiżdied b'1 peress li l-linja ta 'hawn fuq tkun linja infinita jekk il-valur ta' "i" ma jinbidelx.
i = i + 1
Dan il-programm se jistampa l-valur ta '"i" sakemm il-kundizzjoni ta' hawn fuq tkun vera. Hekk kif il-valur ta '"i" isir akbar minn 5, il-linja tinkiser.
Biex nifhem, kif jaħdem dan ħa nżid dikjarazzjoni oħra mingħajr inċiż.
print("done")
Peress li mhuwiex indentjat, mhux se jiġi eżegwit bil-loop while.
Hawn kif se taħdem:
Ejja nilagħbu ftit mal-loop while.
Qed inżid sekwenza oħra fil-loop while b'"asterisk" li timmultiplika b'"i". Ejja naraw kif se jkollha impatt fuq il-programm tagħna.
i = 1
while i <= 5:
print('*' * i)
Issa, se tipprintja asterisks sakemm in-numru ta 'asterisks jaqbeż il-5.
Issa, qed nużaw il-loop while. Ejja nibnu logħba guessing.
Guessing Game billi tuża While Loops
Il-kunċett huwa li l-programm jiffranka numru sigriet fil-memorja tiegħu u jitlobna biex naqtawh. Għandna 3 tentattivi biex naħsbu dak in-numru. Jekk taqta’ n-numru, tkun feraħ. Ejja npoġġu rasna flimkien.
Qed nintroduċu varjabbli għan-numru sigriet tagħna.
secret_number = 6
Issa, irridu niktbu while loop biex ripetutament nistaqsu lill-utent biex raden in-numru. Qabel dan, irridu nintroduċu varjabbli oħra biex nissettjaw in-numru ta 'tentattivi permessi.
guess_count = 0
while guess_count < 3:
guess = int(input('guess: '))
guess_count +=1
if guess == secret_number
print("Congratulations! You won")
Dan il-programm se jieħu input integer mill-utent u ssejvjah f'"guess". Imbagħad se tqabbelha man-numru_sigriet bl-użu tal- operatur ta' tqabbil u jekk it-tnejn ikunu ugwali, jirritorna “Prosit!
Irbaħt". Iżda dan il-programm għandu xi difetti. Jekk taqta n-numru fl-ewwel tentattiv, xorta se titlobek biex taqta darbtejn oħra wara li tifraħlek. Din il-problema tista 'tiġi solvuta billi tuża d-dikjarazzjoni "break" biex tkisser il-linja.
Agħti ħarsa!
Issa, se nżidu dikjarazzjoni "inkella" li se tesegwixxi jekk ma tkunx tista' taqta n-numru fit-tliet tentattivi.
Issa, f'dan il-każ, se nżidu dikjarazzjoni else barra mill-loop while li se tiġi eżegwita jekk il-linja ma tinqasamx b'dikjarazzjoni if.
Nispera li din kienet attività divertenti għalikom. Tista' tieħu pjaċir f'attivitajiet simili biex tikseb profiċjenti f'Python.
Nagħlaq
Dan kien it-tmiem ta’ din il-lecture. Nispera li ħadt gost s'issa. Niltaqgħu miegħek f'wieħed li jmiss. Ibqa' tipprattika sa dakinhar.
Ħalli Irrispondi