我正在创建一个python程序来处理时钟和时间。问题出现在用户输入设置90 seconds
或任何'n'
秒的计时器的位置。这是代码-
inp=input("How can I help you ? : ")
if ("timer" in inp):
print("setting up...")
a=int(input("Enter no. of seconds : ")
import time
while (a != 0):
print(a)
a-=1
time.sleep(1)
现在我想要这样一个接口直接从inp
变量中捕获特定的秒数。
有可能吗?
如果您确信用户将输入timer x
(x是秒数(,则可以执行以下操作:
import time
inp=input("How can I help you ? : ")
if ("timer" in inp):
time.sleep(int(inp))
但大多数时候,您可能想要进行一些用户输入验证。
一个快速而肮脏的解决方案是:
inp = input("How can I help you ? : ")
# assuming input is "timer 90"
inp = inp.split(" ")
if inp[0] == "timer":
a = int(inp[1])
import time
while (a != 0):
print(a)
a-=1
time.sleep(1)
是的,这是可能的。但您需要先指定协议。就像您可以使用一些分隔符或任何东西在同一用户输入中输入timer
和值一样,但这需要首先决定。
这里是一个示例,其中我使用,
作为分隔符来输入timer
和值。
import time
inp=input("How can I help you ? : ")
# I will input --> timer,10
if ("timer" in inp):
secs = int(inp.split(",")[1].strip())
print("Got timer for sleep is : {0}".format(secs))
while (secs != 0):
print(secs)
secs-=1
time.sleep(1)