在while循环的每次迭代中动态创建新集合

0 投票
1 回答
886 浏览
提问于 2025-04-17 21:59

我想在一个while循环的每次迭代中创建一个独特的集合。这个while循环是嵌套在一个for循环里的,for循环负责进行一些时间转换等操作,并生成一个包含与特定列表项相关的值的列表。

在这个嵌套的while循环中,我想为生成的值创建一个独特的集合,但我不太确定该怎么做。我之前考虑过使用字典,但那似乎不是我想要的解决方案。

目前代码的样子是这样的:

for(call_start_time, call_end_time, sid) in cursor:
    call_delta = divmod((call_end_time - call_start_time).total_seconds(), 60)
    call_start_epoch = mktime(call_start_time.timetuple())
    call_end_epoch = mktime(call_end_time.timetuple())
    call_duration = (call_end_time - call_start_time).total_seconds()
    list_test = (sid, call_start_epoch, call_end_epoch, call_duration)

    while call_start_epoch <= call_end_epoch:
        call_duration_two = call_start_epoch + 60
        call_start_epoch += 60
        call_range_set.add(call_duration_two)

我在解决这个问题上没有太多成功,希望能得到一些建议。

1 个回答

0

为什么不使用一个,嗯…… 集合呢?

from sets import Set
...
call_range_set = Set()
while call_start_epoch <= call_end_epoch:
    call_duration_two = call_start_epoch + 60
    call_start_epoch += 60
    call_range_set.add(call_duration_two)
...

想了解更多信息,可以查看这个 官方文档

撰写回答