a = 0
L = ['Alice', 66, 'Bob', True, 'False', 100]
for item in L:
if a % 2 == 1:
a += 1
continue
print(item)
a+=1
a = 0
L = ['Alice', 66, 'Bob', True, 'False', 100]
for item in L:
if a % 2 == 1: 這裡a=0帶入 0%2不等於1所以if不成立
a += 1
continue
print(item) 就直接輸出第一個元素了
a+=1
要改成
a = 0
L = ['Alice', 66, 'Bob', True, 'False', 100]
for item in L:
a += 1
if a % 2 == 1:
continue
print(item)
這樣才對
这个题目意思是要你打印出逻辑上在偶数位的元素,alice是第一个,66是第二个这个意思,符合条件的list下标值分别是1,3,5。
你这里a取的0,所以和list的下标值是同步的,而你代码意思是下标为偶数就打印,所以输出的元素下标分别是0,2,4,懂了吗,所以你的代码改成a=1就对了。
你上面说a=3也行,其实a为任意一个奇数都可以,你a的取值只要和list的下标值奇偶性不一样就没问题,因为题目说的偶数位和下标位为奇数位是一个意思。
我懂了,如果开始写a=1,就是赋予L的第一个元素序号为1,是吧?
因为list元素的顺序是从0开始数的,所以a % 2==0,a必须从0开始啊,不然就漏了一个元素