遍历元组列表,以某种方式将“ a”始终视为元组(a,b)中的偶数

时间:2019-04-30 14:36:31

标签: python-3.x for-loop

当复合语句更改为时,我能够使代码正常工作 如果a % 2 == 0b % 2 == 0: 但是,由于我正处于学习阶段,请有人指导我解释原始代码中的错误。

exm_list = [(4,8),(1,2),(4,5),(6,7),(10,20),(3,5),(3,2)]
for a,b in exm_list:
    if a and b % 2 == 0:
        print(f'{a,b} are the even numbers')
    else:
        print(f'one of {a,b} is the odd number')

enter image description here

2 个答案:

答案 0 :(得分:0)

问题是您没有要求任何'a'条件。您应该声明以下内容:

exm_list = [(4,8),(1,2),(4,5),(6,7),(10,20),(3,5),(3,2)]
for a,b in exm_list:
    if a % 2 == 0 and b % 2 == 0:
        print(f'{a,b} are the even numbers')
    else:
        print(f'one of {a,b} is the odd number')

让我知道。

答案 1 :(得分:0)

在这种情况下

if a and b % 2 == 0:

等效于

if bool(a) and bool(b % 2 == 0):

a是一个整数,所以如果a不为0,则bool(a)为True