我正在尝试创建一个程序,当满足某些条件时,该值将附加到列表中。
例如:
让我们说最后一个限制是1000 从1开始计数 如果计数值是50的倍数,则将其附加到列表
所以这个列表应该有数字,50,100,150,200 ......等等。我陷入了第三步,我怎么能让python知道这个值是50的倍数
感谢帮助我。
答案 0 :(得分:2)
使用%
运算符,它返回余数。因此,如果一个数字是50的倍数,那么它的余数将为0,除了数字本身为0的情况(即0除以50将导致0作为余数)
>>> lis=[]
>>> for x in range(1,1001):
if x%50==0:
lis.append(x)
>>> lis
[50, 100, 150, 200, 250, 300, 350, 400, 450, 500, 550, 600, 650, 700, 750, 800, 850, 900, 950, 1000]
答案 1 :(得分:1)
如果int i
是50的倍数,那么根据定义,当除以50时,它将具有零余数 - 与大多数编程语言一样,Python具有modulo operator来检查 - “是50的倍数?“是拼写:
if i % 50 != 0:
# i is a multiple of 50
或等效地:
if not i % 50:
# i is a multiple of 50
您使用哪一项取决于您是将其视为“余数为零”还是“没有余数” - 但它们总会给出相同的答案。
答案 2 :(得分:0)
>>>a = [i for i in range(1,1001) if i%50==0]
>>>print a
或
>>>a = [i for i in range(1,1001) if not i%50]
>>>print a