python循环和判断结合问题

list = ['12','23','24','34','43']
b = '33'
for i in list:
if i[:1] == b[:1]:
print('if里面的i', i)
break
elif i[1:] == b[1:]:
print('elif里面的i', i)
break
else:
print('else里面的i', i)
# 问题1:我的意愿是在if里面遍历完list,再判断elif;而这个程序是一个一个遍历完才有
# 问题2:else格式不对,跟for对齐却没有错,且运行正确,请问这个格式应该是什么?是for in...else吗?
求大神帮助!!
主要求解决问题1方法;另我只需要一个数,由于百度缩进问题,我的else和for是对齐的

第1个回答  2018-05-10
break改成continue追问

我只需要一个数,你偏离很远了吧

追答

直接说你想输出什么吧,不明白你写这个程序干嘛。

第2个回答  2018-05-10
list = ['12','23','24','34','43']
b = '33'
for i in list:
    if i[:1] == b[:1]:
        print('if里面的i', i)
        break
    elif i[1:] == b[1:]:
        print('elif里面的i', i)
        break
else:
    print('else里面的i', i)
    
解释哈 for ...:
          #do some thing
      else:
           ....
  这样子的写法的意思是:如果你for 循环正常的走完,没有break,那么接下来就会执行它下面的else 内容
  如果在循环的过程中break 了,循环结束, 不会转到else里面

追问

我知道,我想问的是for,怎么在if里面先运行完,再在elif里面运行完,之后再运行else.我的代码是错误的 怎么修改??

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网