hu112363 发表于 2020-11-15 13:50:32

求解

for i in range(10):
    if i%2 != 0:
      print(i)
      continue
    i += 2
    print(i)
如果吧if i%2!=0;,改为if I%2 = 1:,为什么不行?求解{:10_266:}

suchocolate 发表于 2020-11-15 13:57:07

python区分大小写

昨非 发表于 2020-11-15 13:57:45

本帖最后由 昨非 于 2020-11-15 14:32 编辑

i 作为循环变量,在
for i in range(10):里面就已经定死了

for循环里的内容,凡是用到循环变量的地方都得一样

python严格区分大小写,下面要改,上面也要改

for I in range(10):
    if I%2 != 0:
      print(I)
      continue
    I += 2
    print(I)

Twilight6 发表于 2020-11-15 13:58:35



因为 Python 严格区分大小写

这里你改成 I 后 Python 就找不到前面你对 I 的定义就会报错

你可以把 for 循环也改成 I 大写的 I 即可正常运行,当然 I += 2 也要改成大写的

参考代码:

for I in range(10):
    if I%2 != 0:
      print(I)
      continue
    I += 2
    print(I)

逃兵 发表于 2020-11-15 14:15:30

修改后出现了两个问题

1.首先大小写问题,i 与 I 作为变量是不同的

2.其次,判断是否相等需要输入两个等于号也就是==

综上所述

应该改为

if i%2 == 1:

15909574023 发表于 2020-11-15 15:19:37

逃兵 发表于 2020-11-15 14:15
修改后出现了两个问题

1.首先大小写问题,i 与 I 作为变量是不同的


支持
页: [1]
查看完整版本: 求解