Python 3 - 从列表中打印数字,其平方值可以被8整除

时间:2015-10-09 03:47:33

标签: python python-3.x

我目前正在处理一个问题,以确定列表中的平方值是否可被8整除,然后在列表中将其打印出来(如果是这种情况)。例如,我可以列出这个列表:

 list1 = [2, 4, 6, 8, 10, 12]
  • 4平方= 16,可以被8整除。

  • 8 square = 64,可以被8整除,

因此,程序必须打印可被8整除的平方值。我已经意识到,我必须使用print()函数以及"对于"和" in"最有可能是因为它是一个循环类型的问题。

作为参考,这是原始问题:

打印列表中的每个数字 广场  被8整除。

例如,如果列表是

[2, 3, 4, 5, 6, 7, 8, 9]

,然后数字4是应该打印的一个数字,因为4平方 是16和16可被8整除。用你的代码模块测试 的 2  测试清单。

2 个答案:

答案 0 :(得分:1)

观察如果x的平方可被8整除,那么x可以被4整除,所以:

list1 = [2, 4, 6, 8, 10, 12]
print [x for x in list1 if x & 3 == 0]

答案 1 :(得分:0)

num_list = [2, 3, 4, 5, 6, 7, 8, 9]

首先,您遍历列表。使用for循环。将if条件放在if (x * x) % 8 == 0 then print the number

for num in num_list:
    if (num * num) % 8 == 0:
        print(num)

关键的想法是找到方块,因为它使用num * num

要检查数字x是否可以被8整除,请使用x % 8 == 0