Ovaj će vam članak pokazati kako stvoriti jednostavan program za odbrojavanje s programskim jezikom Python. Ovo je dobra vježba za početnika koji želi naučiti o while petljama i modulima. Međutim, već biste trebali biti upoznati s osnovnim Python konceptima, poput varijabli, da biste ih razumjeli.
kako gledati at&t tv
Također morate instalirati Python 3. Ako još niste, prije nastavka slijedite uputeKako instalirati Python.
Koraci
- 1 Otvorite svoj uređivač teksta ili IDE. U sustavu Windows najjednostavnija je opcija IDLE, koji se instalira zajedno s Pythonom.
- dva Otvorite novu datoteku. U mnogim uređivačima teksta to možete učiniti tako da odete na izbornik datoteka i kliknete na Novi prozor ili samo pritiskom na Ctrl + N .
- 3 Uvezite
time
modul. Thetime
sadrži mnoge Python funkcije povezane s vremenom, na primjer dobivanje trenutnog vremena ili čekanje određenog vremena (ovo drugo će vam trebati za ovaj program). Za uvoz modula upišite:countdown
- 4 Definirajte funkciju odbrojavanja. Funkciji možete dati bilo koje ime, ali obično biste trebali koristiti nešto opisno. U ovom slučaju možete mu dati naziv odbrojavanje (). Dodajte sljedeći kod:
sleep
- 5 Napišite while petlju. Dok-petlja ponavlja kôd unutar nje sve dok je njezino stanje točno. U tom slučaju želite da se odbrojavanje nastavi dok broj ne dosegne 0. Dakle, trebate napisati:
time
- Primijetite razmake na početku retka. Oni Pythonu govore da je ovaj redak koda dio definicije
input()
funkcija, a ne samo neki kod ispod nje. Možete koristiti bilo koji broj razmaka, ali morate upotrijebiti isti iznos prije bilo kojeg retka koji želite jednom uvući. - Sljedeće retke koda morat ćete dvaput uvući jer su i oni dio definicije funkcije i dio while-petlje. To se postiže korištenjem dvostruko više razmaka.
- Primijetite razmake na početku retka. Oni Pythonu govore da je ovaj redak koda dio definicije
- 6 Ispišite trenutni broj. To ne znači korištenje pisača za nanošenje na papir, 'ispis' je riječ koja znači 'prikaz na zaslonu'. To će vam omogućiti da vidite koliko je odbrojavanje napredovalo.
countdown()
- 7 Odbrojite broj. Neka bude 1 manje. To se radi sa sljedećim kodom:
countdown()
Ako ne želite toliko tipkati, umjesto toga možete napisati:import time
- 8 Neka program pričeka sekundu. U suprotnom, odbrojavanje bi bilo prebrzo i odbrojavanje bi bilo gotovo prije nego što biste ga uopće uspjeli pročitati. Za sekundu pričekajte upotrijebite
def countdown ( t ):
funkcijawhile t > 0 :
modul koji ste prethodno uvezli:print ( t )
- 9 Učinite nešto kad odbrojavanje dosegne nulu. Za ispis 'BLAST OFF!' kada odbrojavanje dosegne nulu, dodajte ovaj redak:
t = t - 1
- Imajte na umu da je ovaj redak samo uvučen jednom . To je zato što više nije dio while petlje. Ovaj se kôd pokreće tek nakon završetka while-petlje.
- 10 Pitajte korisnika s kojeg broja da započne odbrojavanje. To će vašem programu dati određenu fleksibilnost, umjesto da uvijek računa od istog broja.
- Ispišite pitanje korisniku. Moraju znati u što trebaju ući.
t -= 1
- Dobiti odgovor. Spremite odgovor u varijablu tako da kasnije možete nešto učiniti s tim.
time . sleep ( 1 )
- Iako odgovor korisnika nije cijeli broj, zatražite od korisnika još jedan cijeli broj. To možete učiniti pomoću while petlje. Ako je prvi odgovor već cijeli broj, program neće ući u petlju i samo će nastaviti sa sljedećim kodom.
print ( 'BLAST OFF!' )
- Sada možete biti sigurni da je korisnik unio cijeli broj. Međutim, i dalje je pohranjeno unutar niza (
print ( 'How many seconds to count down? Enter an integer:' )
uvijek vraća niz, jer ne može znati hoće li korisnik unijeti tekst ili brojeve). Morate ga pretvoriti u cijeli broj:seconds = input ()
Ako biste pokušali pretvoriti niz čiji sadržaj nije cijeli broj u cijeli broj, dobit ćete pogrešku. To je razlog dok je program prvo provjeravao je li odgovor zapravo cijeli broj.
- Ispišite pitanje korisniku. Moraju znati u što trebaju ući.
- jedanaest Nazovite
while not seconds . isdigit (): print ( 'That wasn't an integer! Enter an integer:' ) seconds = input ()
funkcija. Prije ste ga definirali, ali definiranje funkcije ne čini ono što je zapisano u njoj. Da biste zapravo pokrenuli kod za odbrojavanje, pozoviteseconds = int ( seconds )
funkcija s brojem sekundi koje je korisnik unio:countdown ( seconds )
- 12 Provjerite gotov kod. To bi trebalo izgledati ovako:
import time def countdown ( t ): while t > 0 : print ( t ) t -= 1 time . sleep ( 1 ) print ( 'BLAST OFF!' ) print ( 'How many seconds to count down? Enter an integer:' ) seconds = input () while not seconds . isdigit (): print ( 'That wasn't an integer! Enter an integer:' ) seconds = input () seconds = int ( seconds ) countdown ( seconds )
- Prazni retci nalaze se samo radi lakšeg čitanja koda. Oni nisu potrebni, a Python ih zapravo ignorira.
- Ako želite, možete napisati t = t - 1 umjesto t - = 1.
Pitanja i odgovori zajednice
traži Dodajte novo pitanje- Pitanje Kako mogu postići da se tiska svake sekunde, a ne da se odjednom tiska sve? Upotrijebite funkciju time.sleep (x). Omogućuje pauziranje programa na x sekundi. Nakon svake izjave za ispis umetnite time.sleep (1).
- Pitanje Kako mogu povećati font u Pythonu na Macu? U ljusci Python kliknite Options, Configure, Idle. Odatle možete promijeniti veličinu fonta.
- Pitanje Zašto modul 'vrijeme' ako se nikada ne koristi? Ako napišete program za, recimo, robota i imate servo kontrole u milisekundama, tada će on koristiti vremenski modul za slanje električnog signala u pravo vrijeme.
- Pitanje Stalno dobivam sljedeću pogrešku: 'očekivao se uvučeni blok.' Što sam pogriješio? Za uvlačenje trebate pritisnuti tipku 'Tab', pa ako ste radili petlju 'if'. učinili biste: if a = b: print ('Uvlačenje je prostor prije ispisa')
- Pitanje Želim ispisati vrijeme na video ekranu. Što da napravim? Pretpostavljam da mislite na prozor Python Turtle Graphics. Ako sam točan, trebali biste upotrijebiti funkciju 'write ()' umjesto 'print ()'. Tada biste trebali dodati 'clear ()' jer 'write ()' ne mijenja linije automatski. Inače biste mogli pomaknuti položaj svoje kornjače. Da biste koristili funkciju 'write ()', također morate dodati 'from kornjača import *'.
- Pitanje: Koristim LiClipse i prilikom učitavanja koda se učitava, ali ništa se ne događa. Uvlačenje je u redu i jedino što sam promijenio je promjena varijable n u a. Provjerite ima li sintaksnih pogrešaka, najčešće dvotočke na kraju svih potrebnih faza, i provjerite jesu li vaš OS, upravljački programi i Python najnoviji update. Također bi moglo biti korisno provjeriti vatrozid i blokira li sučelje.
- Pitanje Kako mogu zaustaviti ili prekinuti odbrojavanje? Korištenjem ključne riječi 'break'. Na primjer, ako ste željeli pokrenuti odbrojavanje, ali ste ga htjeli zaustaviti na pola puta, možete pokušati otprilike ovako: i = 10 dok i<10: print(i) i -= 1 if i == 5 break print('done')
- Pitanje Kako mogu stvoriti tajmer koji stvara slučajni broj nakon određenog vremena u Pythonu? Prvi slučajni uvoz. Zatim možete dodati ovaj redak iza koda: random.choice (1,2,3,4,5,6,7,8,9).
- Pitanje Kako pokrenuti tajmer u pozadini u kvizu? Nevidljivi To je teško izvesti u Pythonu. Trebali biste upotrijebiti navoja da biste to postigli: def laughing: while True: print ('Haha') thread1 = threadading (smijeh) thread1.start ()
- Što ako želim da se odbrojava od dana u određenoj vremenskoj zoni? E. I. Svakog petka od 17:00 utc + 1 do ponedjeljka 17:00 utc + 1? Odgovor
- Kako najbolje mogu naučiti python za 30 dana? Odgovor
- Što ako želim da to bude GUI? Odgovor
Oglas