Как да направите програма за обратно отброяване в Python

Тази статия ще ви покаже как да създадете проста програма за обратно отброяване с езика за програмиране Python. Това е добро упражнение за начинаещ, който иска да научи повече за циклите и модулите. Вече трябва да сте запознати с основните концепции на Python като променливи, за да го разберете.



епикондилит скоба опора за лакът

Също така трябва да имате инсталиран Python 3. Ако все още не сте, преди да продължите, следвайте инструкциите наКак да инсталираме Python.

Стъпки

  1. един Отворете вашия текстов редактор или IDE. В Windows най-лесният вариант е да използвате IDLE, който е инсталиран заедно с Python.
  2. 2 Отворете нов файл. В много текстови редактори можете да направите това, като отидете в менюто с файлове и щракнете върху Нов прозорец или просто натиснете Ctrl + N .
  3. 3 Импортирайте time модул. time съдържа много функции на Python, свързани с времето, например получаване на текущото време или изчакване на определен период от време (последното е това, което ще ви трябва за тази програма). За да импортирате модула, напишете: countdown
  4. 4 Определете функция за обратно отброяване. Можете да дадете на функцията всяко име, което искате, но обикновено трябва да използвате нещо описателно. В този случай можете да го наречете countdown (). Добавете следния код: sleep
  5. 5 Напишете цикъл while. Цикълът while повтаря кода вътре в него, стига състоянието му да е вярно. В този случай искате броенето да продължи, докато числото достигне 0. И така, трябва да напишете: time
    • Забележете интервалите в началото на реда. Те казват на Python, че този ред код е част от дефиницията на input() функция, а не само някакъв код под нея. Можете да използвате произволен брой интервали, но трябва да използвате същото количество преди всеки ред, който искате да отстъпите веднъж.
    • Ще трябва да отстъпите следващите кодови редове два пъти, защото и двете са част от дефиницията на функцията и част от цикъла while. Това се прави, като се използват двойно повече интервали.
  6. 6 Отпечатайте текущия номер. Това не означава да използвате принтер, за да го поставите на хартия, „печат“ е дума, която означава „показване на екрана“. Това ще ви позволи да видите докъде е стигнало обратното отброяване. countdown()
  7. 7 Отбройте броя. Направете го с 1 по-малко. Това се прави със следния код: countdown()
    Като алтернатива, ако не искате да пишете толкова много, вместо това можете да напишете:
       import   time  
  8. 8 Накарайте програмата да изчака секунда. В противен случай би било преброяването на числата твърде бързо и отброяването ще бъде завършено, преди дори да можете да го прочетете. За изчакване на секунда използвайте
       def   countdown  (  t  ):  
    функция на
        while   t   >   0  :  
    модул, който преди това сте импортирали:
        print  (  t  )  
  9. 9 Направете нещо, когато отброяването достигне нула. За да разпечатате „BLAST OFF!“ когато отброяването достигне нула, добавете този ред:
        t   =   t   -   1  
    • Имайте предвид, че този ред е само с отстъп веднъж . Това е така, защото вече не е част от цикъла while. Този код се изпълнява само след приключване на цикъла while.
  10. 10 Попитайте потребителя от кой номер да започне обратното броене. Това ще даде на вашата програма известна гъвкавост, вместо винаги да брои от един и същ номер.
    • Отпечатайте въпроса на потребителя. Те трябва да знаят в какво трябва да влязат.
          t   -=   1  
    • Получете отговора. Съхранявайте отговора в променлива, за да можете по-късно да направите нещо с него.
          time  .  sleep  (  1  )  
    • Докато отговорът на потребителя не е цяло число, попитайте потребителя за друго цяло число. Можете да направите това с цикъл while. Ако първият отговор вече е цяло число, програмата няма да влезе в цикъла и просто ще продължи със следващия код.
          print  (  'BLAST OFF!'  )  
    • Сега можете да сте сигурни, че потребителят е въвел цяло число. Въпреки това, той все още се съхранява в низ (
         print  (  'How many seconds to count down? Enter an integer:'  )  
      винаги връща низ, защото не може да знае дали потребителят ще въведе текст или числа). Трябва да го преобразувате в цяло число:
         seconds   =   input  ()  

      Ако сте се опитали да преобразувате низ, чието съдържание не е цяло число, в цяло число, ще получите грешка. Това е причината, докато програмата първо проверяваше дали отговорът всъщност е цяло число.
  11. единадесет Обадете се на
       while   not   seconds  .  isdigit  ():   print  (  'That wasn't an integer! Enter an integer:'  )   seconds   =   input  ()  
    функция.
    По-рано сте го дефинирали, но дефинирането на функция не прави написаното вътре в нея. За да стартирате действително кода за обратно отброяване, извикайте
       seconds   =   int  (  seconds  )  
    функция с броя секунди, които потребителят е въвел:
       countdown  (  seconds  )  
  12. 12 Проверете готовия си код. Тя трябва да изглежда така:
       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  )  
    • Празните редове са само там, за да улеснят четенето на кода. Те не се изискват и Python всъщност ги игнорира.
    • Можете да напишете t = t - 1 вместо t - = 1, ако предпочитате.
    Реклама

Въпроси и отговори на общността

Търсене Добавете нов въпрос
  • Въпрос Как да го накарам да отпечатва всяка секунда, вместо да го отпечатвате наведнъж? Използвайте функцията time.sleep (x). Позволява програмата да прави пауза за x секунди. След всяко изявление за печат въведете time.sleep (1).
  • Въпрос Как да направя шрифта по-голям в Python на Mac? В обвивката на Python щракнете върху Options, Configure, Idle. Оттам можете да промените размера на шрифта.
  • Въпрос Защо има модул „време“, ако никога не се използва? Ако напишете програма за, да речем, робот и имате сервоуправления за милисекунди, тогава той ще използва модула за време, за да изпрати електрическия сигнал за точното време.
  • Въпрос Продължавам да получавам следната грешка: „очаква се отстъпен блок“. Какво съм сгрешил? Трябва да натиснете клавиша „Tab“, за да отстъпите, така че ако правите цикъл „if“. бихте направили: if a = b: print ('Отстъпът е интервалът преди печат')
  • Въпрос Искам да отпечатам времето на видеоекрана. Какво трябва да направя? Предполагам, че имате предвид прозореца Графика на костенурката на Python. Ако съм прав, трябва да използвате функцията 'write ()' вместо 'print ()'. Тогава ще трябва да добавите 'clear ()', защото 'write ()' не променя редовете автоматично. В противен случай можете да преместите позицията на вашата костенурка. За да използвате функцията 'write ()', трябва също да добавите 'from turtle import *'.
  • Въпрос: Използвам LiClipse и при зареждане на кода той се зарежда, но нищо не се случва. Отстъпът е наред и единственото нещо, което промених, е промяната на променливата n на a. Проверете за синтаксични грешки, най-често точка с двоеточие в края на всички необходими фази, и се уверете, че вашата операционна система, драйвери и Python са най-новата актуализация. Също така може да е полезно да проверите защитната стена и да видите дали блокира интерфейса.
  • Въпрос Как мога да спра или да преустановя обратното броене? Чрез използване на ключовата дума 'break'. Например, ако искате да инициирате обратно отброяване, но искате да го спрете по средата, можете да опитате нещо подобно: i = 10, докато i<10: print(i) i -= 1 if i == 5 break print('done')
  • Въпрос Как да създам таймер, който генерира произволно число след определен период от време в Python? Първо произволно импортиране. След това можете да добавите този ред след кода: random.choice (1,2,3,4,5,6,7,8,9).
  • Въпрос Как да стартирам фонов таймер в тест? Невидим Това е трудно да се направи в Python. Трябва да използвате резба, за да постигнете това: def laughing: while True: print ('Haha') thread1 = резба (смях) thread1.start ()
Въпроси без отговор
  • Ами ако искам да отброява от дни в определен часови пояс? Д. I. Всеки петък от 17:00 utc + 1 до понеделник 17:00 utc + 1?
  • Как най-добре мога да науча python за 30 дни?
  • Ами ако искам да е GUI?
Задайте въпрос Остават 200 знака Включете вашия имейл адрес, за да получите съобщение, когато отговорите на този въпрос. Изпращане
Реклама

Съвети

Изпратете съвет Всички изпратени съвети се преглеждат внимателно, преди да бъдат публикувани. Благодарим ви, че изпратихте съвет за преглед!

Популярни Въпроси

Премиерата на сезон 3 на „Корпоративна“ в сряда вечерта. Ето как да гледате нови епизоди онлайн, ако нямате кабел.

Опитвате ли се да разберете как да гледате Disney Plus на вашия Apple TV? Ето как точно да изтеглите приложението Disney Plus на Apple TV с нашето ръководство стъпка по стъпка.



Анкита Райна се класира за финала на турнира по тенис на жени в Пуна с победа над румънката Кристина Ене.