我有两个长度相同的列表,如果列表b的组件大于列表a中相同组件的平方,我想打印出列表b的组件。
a = [2, 3, 4, 5, 6]
b = [10, 11, 12, 13, 14]例如:
if b[0] > (a[0])**2:
print (b[0])所需输出是一个列表
[10, 11] 因为10 > 2**2 and 11 > 3**2
>>> a = [2, 3, 4, 5, 6]
>>> b = [10, 11, 12, 13, 14]
>>> for x, y in zip(a, b):
... if y > x**2:
... print(b)我想我在if语句中做错了什么?有什么帮助吗?
发布于 2018-09-08 23:40:16
print([b[i] for i in range(len(b)) if b[i] > a[i]**2])提供:
[10,11]用你的方法:
print([i for w,i in zip(a,b) if i > w**2])发布于 2018-09-08 23:55:04
您也可以尝试以下操作:
a = [2, 3, 4, 5, 6]
b = [10, 11, 12, 13, 14]
for index, value in enumerate(b):
if value > a[index]**2:
print(value)https://stackoverflow.com/questions/52236788
复制相似问题