如何将int除以lis的一部分

2024-04-23 10:09:43 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图用一个列表中的数字除以同一个列表中的一些数字。你知道吗

这是我的密码:

for i in numbers:

    list_position = numbers.index(i)
    half_list_position = int(list_position//2 + 1)

    if i % numbers[0:half_list_position] in numbers == 0:

        prime_list.remove(i)

正如你所看到的,我想把‘I’除以它前面的数字的一半,作为余数0,我正试图通过使用列表索引来做到这一点。如果在任何一点“i”除以列表中的一个数字返回余数零,我想从另一个列表(素数列表)中删除相同的数字“i”,然后移到列表“numbers”中的下一个数字。你知道吗

这将返回类型错误:不支持的操作数类型。你知道吗

我怎么才能避开这个?你知道吗

谢谢你


Tags: in密码类型列表forindexifposition
1条回答
网友
1楼 · 发布于 2024-04-23 10:09:43

列表切片是列表,数字和列表之间不支持模数([0 : half_list_position]甚至不是切片):

 i % [0:half_list_position]

你可以这样做:

if sum(1 for n in numbers[:half_list_position] if i % n == 0) > 0:    
        prime_list.remove(i)

相关问题 更多 >