打印从1到100的所有数字的列表,跳过被3或5整除的数字

问题描述 投票:-2回答:2
a = range(1,101)

mylist = [num for num in a if num%3==0 or num%5==0]


print(mylist)

这里是3或5的倍数的列表。但是如果没有这些,我怎么能得到一个清单呢?

python list numbers python-3.6 subtraction
2个回答
2
投票

您可以简单地将您的病情倒转,因为与您想要的完全相反。您希望“如果不是3的倍数而不是5的倍数”,而不是“ if是3或5的倍数”。

这将产生您想要的:

a = range(1,101)

mylist = [num for num in a if (num % 3 != 0) and (num % 5 != 0)]

print(mylist)

0
投票

您可以使用0为False且其他整数为True的事实。

mylist = [num for num in a if num % 3 and num % 5]
© www.soinside.com 2019 - 2024. All rights reserved.