设置随机数到时间

问题描述 投票:0回答:4

我正在尝试生成一个随机数用作秒并将该数字转换为小时,但我不知道如何获取我生成的数字并将其放入转换器中。

到目前为止我有这个:

import random
import datetime

print(random.randint(30000, 1000000)) = a
    
 
sec = a
res = datetime.timedelta(seconds =sec)
print(res)

我应该做什么才能使这项工作成功?

python time
4个回答
2
投票

print()
是一个函数,你将它设置为一个变量?这是行不通的。您必须将要打印的值设置为变量:

a = random.randint(30000, 1000000)

但是因为您将

sec
设置为
a
,所以您只需将
sec
设置为随机值即可:

import random
import datetime

sec = random.randint(30000, 1000000)

并且您不需要日期时间模块将秒转换为小时。您只需将秒数除以 3600(一小时的秒数)即可:

import random

sec = random.randint(30000, 1000000)
hour = sec/3600

print(f"{sec} seconds is equals to {hour} hour(s)")

1
投票

为了确保间距正确,我假设您的代码看起来像这样

import random
import datetime
print(random.randint(30000, 1000000)) = a
sec = a
res = datetime.timedelta(seconds=sec)
print(res)

首先,如果要将随机整数分配给“a”,则必须将“a”放在等号的左侧(请记住,右侧的值将分配给左侧的任何变量。如果如果您想打印 a 的值(随机整数的值),则必须在单独的行中执行此操作。 所以你的代码应该看起来像这样。

import random
import datetime
a = random.randint(30000, 1000000)
print(a)
res = datetime.timedelta(seconds = a)
print(res)

希望有帮助!


0
投票

我在你的代码中做了一些修改。这是你想要的吗?

import random
import datetime

a = random.randint(30000, 1000000)
print(a)
    
 
sec = a
res = datetime.timedelta(seconds =sec)
print(res)

0
投票

如果您想要将随机秒数转换为天、小时、分钟和秒,请尝试以下操作:

import random
import datetime

seconds = (random.randint(30000, 1000000))
res = str(datetime.timedelta(seconds=seconds))
print(res)

如果您只想要小时,可以使用以下代码生成随机秒值:

import random
import datetime

seconds = (random.randint(30000, 1000000))
hours = round(seconds/3600)

print(f"Time in hours: {hours}")

如果您不希望时间四舍五入为

int
,只需删除
round()

© www.soinside.com 2019 - 2024. All rights reserved.