Welkom terug.
Hoe heb je het gedaan met het willekeurige spel?
Heb je het kunnen oplossen?
Laten we het hier eens proberen.
Nu, ik ga gewoon de Testopel gebruiken, laten we het gewoon hernoemen zodat het niet verwarrend is.
Ik ga het hernoemen naar willekeurig, niet willekeurig willekeurig spel door.
Oké, nu hier binnen, ik wil eerst en vooral, laten we nadenken over wat we nodig hebben.
Dus het eerste wat we nodig hebben is.
genereren.
Een nummer één tot en met 10.
Wat we vervolgens moeten doen, is invoer van gebruikersrecht krijgen, en dan willen we een soort invoercontrole
uitvoeren.
Dus laten we controleren of de invoer een nummer één tot tien is en dan.
Controleer of zo nee, anders de juiste gok is.
Vraag het nog een keer, dus dat lijkt ons een goed programma dat we kunnen schrijven.
Dus hoe kunnen we dit doen?
Nou, de eerste taak is om een nummer één tot tien te genereren.
Ik weet dat ik zeker de willekeurige bibliotheek van hier wil importeren.
En specifiek, ze zijn willekeurig.
Dus ik kan gewoon zeggen uit willekeurige importrant en die we hebben gezien en hier kan ik de cijfers genereren.
Dus laten we het noemen, het antwoord is Grant en.
Van één tot tien.
Dit wordt dus ons door een machine gegenereerd willekeurig getal dat we moeten proberen te raden.
Vervolgens moeten we de input van de gebruiker krijgen, dus hoe kunnen we dit doen?
Nou, simpel, toch?
We kunnen een schatting krijgen als invoer van de gebruiker en we krijgen de prompt.
Dus we zullen zeggen: raad een nummer één tot en met 10.
Oké, dus dat ziet er goed uit.
Hoe zit het met het controleren van die invoer dat het een nummer één tot 10 is, dus we moeten hier
nu een beetje controleren omdat we willen blijven herhalen terwijl de gebruiker aan het raden is.
Ik ga een tijdje een echte lus maken waar we voor moeten zorgen dat we uitbreken zodat we geen oneindige lus
hebben.
En in het eerste deel van de draadlus wil ik controleren wat de gebruiker invoert, dus ik ga zeggen of
ik het raad.
We weten meteen dat de invoer ons een string zal geven, dus we moeten ervoor zorgen dat we dit eerst
in een evenement omzetten.
Dus laten we dat doen.
Ik ga zeggen.
Als.
Int.
Ja.
Is.
groter.
Dan één, en het is minder dan.
Elf, dus in ons geval, laten we hier nul doen, omdat we er zeker van willen zijn dat als het er één is, het nog steeds
goed is.
Als het 10 is, is het nog steeds goed.
In dat geval kunnen we proberen te controleren of het de juiste gok is.
Wat gebeurt er als dit niet lukt?
Wat als de gebruiker een string invoert die niet kan worden omgezet in een ENT, bijvoorbeeld, als ik
naar mijn terminal hier ga en ik zet gewoon de Python-interpreter aan en zeg het en geef het dan wat gebrabbel, ik krijg
een waarde fout ongeldig.
Litoral voor KNO met Basten.
Ik heb geen idee wat je probeert te doen, dus we kunnen hier controleren op een waardefout.
Dus wat ik ga zeggen.
Is om te proberen.
Dit stukje code en voorlopig geven we het hier door, en als het om de een of andere reden niet doorgaat en
we daar op waarde controleren, dan ga ik het afdrukken.
Vul a.u.b. een in.
Een getal.
Geweldig.
Dus we controleren of de invoer een nummer één is.
Dus voor nu, om er zeker van te zijn dat dit werkt, laten we dit gewoon doen, laten we deze lus doorbreken om
te printen.
Alles goed hier.
En doorbreek deze lus, aangezien we nu een nummer één tot en met 10 invoeren en laten we dit een beetje kleiner maken
zodat je het beter kunt zien.
Daar ga je.
En voor hier gaan we gewoon door, want we blijven doorgaan totdat we het goede antwoord
krijgen.
Dus nogmaals, we importeren rended en genereren een willekeurig nummer één tot 10.
We krijgen de gok van de gebruiker.
En dan willen we controleren of de invoer een nummer één tot 10 is.
Dus ik heb een lus die ik blijf doorlopen en ik ga vragen, is het getal nul tot 11?
Als dat zo is, dan zijn we allemaal goed, als we om de een of andere reden een taxateur krijgen, dan gaan we zeggen, hé, vul alstublieft
ons nummer in.
Dus laten we dat maar eens testen.
Ik ga naar mijn terminal.
Of eigenlijk kunnen we dit jaar gewoon rennen.
Laten we het uitvoeren.
Oké, ja, zeg niemand tegen 10.
En ik krijg allemaal het idee dat ik denk dat we hier een paar spaties nodig hebben, het ziet er een beetje raar uit,
dus laten we zeggen dat nummer één tot 10 moet raden en wat spaties geven.
Laten we dat nog eens uitvoeren.
Alsjeblieft, en ik heb eigenlijk al een bug opgemerkt die we moeten oplossen als, laten we zeggen, ik jibberish invoer.
Oh, jongen, zei ik, voer alsjeblieft ons nummer in, voer alsjeblieft ons nummer in, en we moeten
dit stoppen omdat het vernietigd wordt.
Dus wat is hier gebeurd?
Nou, we kwamen niet uit deze lus, we gingen door en we gingen gewoon van muur tot muur tot muur.
En we kregen daar steeds een waarde, dus je moet hier voorzichtig zijn.
Denk eraan, als we verder gaan.
Het gaat terug naar het stamblok of terug naar de muurlus en het gaat dit opnieuw proberen, maar we
vragen niet om de invoer of een nieuwe invoer.
Nogmaals, dit gaat mislukken en dan gebeurt er nog een mislukking en dan gaat dit mislukken.
Er treedt een andere waardefout op.
We moeten dus raden.
Hier binnen, precies in het stamblok.
Dus als ik dit nu uitvoer.
Oké, laten we een nummer halen, laten we kletsen.
Ik heb het begrepen, voer een nummer in.
Oké, we zullen een nummer invoeren, we zullen invoeren.
Wat dacht je van nul?
Nee, dit werkt niet.
Het zal me blijven vragen omdat, nou ja, het aantal dat we hebben ingevoerd, het is minder dan één tot tien, maar het
is een verkeerd antwoord.
We kunnen controleren of het niet klopt, weet je.
Laten we dat doen.
Laten we zeggen, anders zeggen we.
Hé, gek, ik zei één voor tien, ik zal een leuke zijn.
Oké, laten we dit uitvoeren.
Laten we nul doen.
Hé, gek, ik zei één tot tien.
Oké, laten we er vijf doen.
Hallo.
Ik denk dat de nummer één tot 10, alles is goed.
Alles goed.
Oké, dus wat ik nu ga doen is kijken of de gok overeenkomt met het antwoord hier.
Nu, voordat ik dat doe, zie je hier hoe de cirkeldiagram-ID me een kleine hint geeft, een gele lijn
die zegt, hey, deze vereenvoudigde ketenvergelijking kan eigenlijk worden verbeterd.
Daarom zijn ID's zo krachtig.
En hier kan ik dit eigenlijk vereenvoudigen.
Ik kan zeggen als int raden is.
Hoger dan nul.
En minder dan 11 doen dan dit en kijk daar eens naar, ik heb zojuist mijn code vereenvoudigd en de editor gaf me een
leuke hint.
Oké, laten we hier doorheen gaan.
Dus in plaats van te zeggen: alles goed afdrukken.
Laten we zeggen als.
Dit is het geval, we gaan nog een voorwaardelijke hebben en zeggen of de int gok.
Gelijk aan het antwoord.
We gaan printen.
Uw.
A.
Genie.
En daar komen we uit.
Let hier eens op hoe we het een paar keer doen. Misschien is een betere manier om het te doen
hier een einde te maken, zodat we onszelf niet herhalen en dezelfde functie steeds opnieuw uitvoeren.
En raad eens op deze manier, dus nogmaals, we zijn onze code aan het opschonen, zodat het meer op Engels lijkt.
Dat is mooi.
En als we dit nu uitvoeren.
Ik zeg nee, laten we zeggen vijf.
Nee, dat klopt niet, laten we er zes doen of ongeveer zeven, acht, negen.
Deze man is een harde koek.
Een twee drie vier.
Oh kom op.
Is het 10?
Wauw, we zijn zeker geen genieën, want we hebben het allebei tien keer geprobeerd, maar dit lijkt te
werken.
Laten we ervoor zorgen dat we dit echt goed doen door een beetje vals te spelen.
Ik ga hier echt uitprinten.
Het antwoord?
Dus ik kijk wat het antwoord is voordat ik het typ.
Laten we dat hier echt doen.
Als ik klik, ren dan weg.
Oké, de cijfers voor als ik typ voor.
Oké, nu ben ik een genie, probeer het eerst.
Oké, we spelen vals, maar het lijkt erop dat dit werkt.
Dat is best wel cool.
Het laatste deel hier is dat ik tot nu toe de invoer heb gebruikt, maar ik zei dat ik
het in een terminal wilde uitvoeren en ik wil het eigenlijk, nou ja, parameters kunnen geven, goed.
We geven het de startparameter en de eindparameter van rended, zodat we het spel zo moeilijk kunnen maken als we willen.
Dus dat is vrij eenvoudig.
We hebben hier het importsysteem.
En we zeggen gewoon systeem RGV de eerste parameter.
Onthoud dat de eerste de bestandsnaam is en dan de.
Derde parameter, en dat zijn de getallen die we eraan geven, dus laten we dit bestand nu gebruiken.
Laten we de code kopiëren.
En alleen voor dit voorbeeld, omdat het eenvoudiger is, voegen we het gewoon toe aan ons sublieme tekstbestand.
Oh, en het lijkt erop dat we hier ook aragvi moeten doen.
Zorg dat we dat niet vergeten.
Dus laten we dat ook oplossen.
Zo, dat is beter, en als we hier niet aan toe waren, want onthoud, de parameters die we eraan
gaan geven, worden omgezet in strings.
Dus we moeten er alleen voor zorgen dat we dit omzetten in een evenement als dit.
Als we dit nu gewoon kopiëren.
Voer dit hier uit.
Laten we het nog een keer uitvoeren, dus ik druk hier omdat het mijn vorige commando onthoudt, laten we
zeggen dat ik nummer één of twee ga raden.
Laten we gaan met een.
Daar ga je.
Ik ben een genie en ons programma werkt nu.
Ons raadspel werkt nu.
Heel erg cool.
Als je deze goede baan hebt.
Als je dat niet deed.
Nou, je kunt gewoon naar mijn code kijken en hopelijk zien waar je fout ging.
Goed werk om zo ver te komen.
Ik zie je in de volgende.
Tot ziens.