基本上我试图将一个字符串输入作为睡眠定时器拉入配置。 我一直收到错误
Traceback (most recent call last):
File "bot.py", line 50, in <module>
sleep(sleep_time)
TypeError: an integer is required (got type str)
这是我正在使用的代码。有一个更好的方法吗?基本上我希望能够在将一个睡眠时间输入到一个exe中后将其输入配置。
sleep_time=config.get('settings', 'SleepTime')
sleep(sleep_time)
答案 0 :(得分:0)
与追溯说法一样,您需要先将变量转换为int
,然后再将其传递给time.sleep
。
您可以使用int
内置函数执行此操作,该函数将使用字符串并将其转换为整数。您还可以提供第二个数字来更改转换的基数,默认基数为10.
myint = int("10") # myint == 10
myint = int("1a", 16) # myint == 26
我假设SleepTime
是您在默认睡眠时间使用的变量的名称。就个人而言,我会像这样编写函数调用;
sleep_time = config.get("settings")
if sleep_time is not None:
sleep_time = int(sleep_time)
else:
sleep_time = SleepTime
sleep(sleep_time)
但是你可能希望这样做以提高可读性;
sleep_time = int(config.get("settings", "1")) # sleep for 1 second by default
sleep(sleep_time)