Как написать программу которая после запуска будет запускать отсчет времени?
Нужно создать программу, которая после запуска будет выводить текст "Осталось времени: 5 секунд" и с каждой секундой текст должен менять время на 1 секунду.
Ответы (4 шт):
Автор решения: RomanR
→ Ссылка
Печатает строку и засыпает на секунду
import time
k = 5
while k != 0:
print("Осталось времени: {} секунд".format(k))
k -= 1
time.sleep(1)
Автор решения: TheTaiterVS
→ Ссылка
Думаю, должно помочь.
import time
waitingTime = 5
while True:
time.sleep(waitingTime / waitingTime)
waitingTime -= 1
print("Осталось времени: " + str(waitingTime))
if waitingTime == 0:
break
Автор решения: Danis
→ Ссылка
import time
k = 5
while k:
print(str(k) + ' ', end='\r')
k -= 1
time.sleep(1)
Автор решения: S. Nick
→ Ссылка
Как вариант:
import sys
from PyQt5.QtCore import QThread
from PyQt5.QtWidgets import (QPushButton, QMainWindow, QWidget, QLCDNumber,
QSpinBox, QGridLayout, QApplication)
import threading
class Window(QMainWindow):
def __init__(self):
super().__init__()
centralWidget = QWidget()
self.setCentralWidget(centralWidget)
self.button = QPushButton("Начать обратный отсчет")
self.lcd = QLCDNumber(self)
self.spin = QSpinBox(self)
grid = QGridLayout(centralWidget)
grid.addWidget(self.lcd)
grid.addWidget(self.spin)
grid.addWidget(self.button)
self.initUI()
def initUI(self):
self.button.clicked.connect(self.timing)
def timing(self):
self.tbutton1 = threading.Thread(target=self.timingThread, daemon=True)
self.tbutton1.start()
self.button.setEnabled(False)
def timingThread(self):
timing = self.spin.value()
for i in range(timing, -1, -1):
QThread.msleep(1000)
self.lcd.display("{}".format(i))
self.button.setEnabled(True)
if __name__=='__main__':
app = QApplication(sys.argv)
win = Window()
win.resize(300, 200)
win.show()
sys.exit(app.exec_())
