Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
不协调Python重写问题-asyncio.sleep()_Python_Discord.py_Discord.py Rewrite - Fatal编程技术网

不协调Python重写问题-asyncio.sleep()

不协调Python重写问题-asyncio.sleep(),python,discord.py,discord.py-rewrite,Python,Discord.py,Discord.py Rewrite,有没有可能把这件事搞清楚 asyncio.sleep() 如果输入时间为1米,则休眠60秒;如果输入时间为1小时,则休眠60分钟;如果输入时间为24小时,则休眠1天;如果是,则我需要一个示例,因为我需要它作为我的赠品代码。asyncio.sleep()始终以秒为单位延迟-请参阅。您可以很容易地编写一个函数,该函数将以任何单位占用任何时间,并将其转换为秒。然后将该数字传递给asyncio.sleep()只需几秒钟,您可以为此编写一个函数,将输入的时间转换为几秒钟 import re from da

有没有可能把这件事搞清楚

asyncio.sleep()

如果输入时间为1米,则休眠60秒;如果输入时间为1小时,则休眠60分钟;如果输入时间为24小时,则休眠1天;如果是,则我需要一个示例,因为我需要它作为我的赠品代码。

asyncio.sleep()
始终以秒为单位延迟-请参阅。您可以很容易地编写一个函数,该函数将以任何单位占用任何时间,并将其转换为秒。然后将该数字传递给asyncio.sleep()

只需几秒钟,您可以为此编写一个函数,将输入的时间转换为几秒钟

import re
from datetime import timedelta


time_units = {'s': 'seconds', 'm': 'minutes', 'h': 'hours', 'd': 'days', 'w': 'weeks'}


def to_seconds(s):
    return int(timedelta(**{
        time_units.get(m.group('unit').lower(), 'seconds'): int(m.group('val'))
        for m in re.finditer(r'(?P<val>\d+)(?P<unit>[smhdw]?)', s, flags=re.I)
    }).total_seconds())


@client.command()
async def giveaway(ctx, *, time):
    print(f"{ctx.message.content} --> {to_seconds(time)}")
>giveaway 1w --> 604800
>giveaway 30s --> 30
>giveaway 1d --> 86400
>giveaway 1h 25m --> 5100
>giveaway 5m 30s --> 330