尝试使用余数运算符在列表中查找正值并在找到它们时打印它们。
ExampleList=[2,5,-34,0,389,202,8]
我想我不明白如何让操作员使用列表然后打印值。
答案 0 :(得分:1)
import sys
li = [2,5,-34,0,389,202,8]
m = sys.maxint
print [e for e in li if e == e%m]
答案 1 :(得分:0)
ExampleList=[2,5,-34,0,389,202,8]
for i in ExampleList:
if ((i % 10) != (abs(i) % 10)):
print (i)
上述代码适用于此特定示例,但可能无法正常工作,因为有数字,无论它们是正数还是负数,都会给出相同的模数结果。
答案 2 :(得分:0)
嗯,使用<
或相关比较或abs
的任何解决方案实际上并未使用%
的任何独特功能。所以只是为了好玩,有点愚蠢的方式来做这件事而不使用任何特殊功能,并且除了==
以外没有实际使用%
行为的有意义的比较(而不仅仅是添加为了这个目的,%
代码可以生成没有它的正确结果:
>>> li = [2,5,-34,0,389,202,8]
>>> print([x for x in li if x == x % (x ** 2 + 1)])
[2, 5, 0, 389, 202, 8]
我们调整x
来创建一个已知大于x
绝对值的值(并添加1
来处理0
和{{的特殊情况1}})。
另一种棘手的方法是使用数字作为除数,以便始终从非负输入中获得固定值:
1