为了账号安全,请及时绑定邮箱和手机立即绑定

这个为什么会运行成功,输出错误?

L=[]

for a in range(1,10):

    for b in range(0,10):

        for c in range(0,10): 

            if a==c:

               L.append(100*a + 10*b+c)

print[L]


2019-11-07 源自:初识Python 10-4 131 浏览 2 回答

最佳回答

2019-11-07

运行成功是因为代码执行过程中没有报错。输出错误不是任务想要的对称数结果。

weixin_慕后端8438116 (提问者)

这是最后一题,我看结果也一样啊。求大神指点

#1 2019-11-08 回复

君法明

最后一句的print[L] 应该改为:print L 去掉中括号[].

#2 2019-11-08 回复
  1. 题目要求是找出首尾相同的对称三位数,那么该数字必定是100到1000以内的数字。

  2. 题目要求是用三层嵌套循环,那么第一层循环百位数(1-9),第二次循环十位数(0-9),第三层循环个位数(0-9)。

  3. 在循环体里面就是组装三位数了,然后把组装好的三位数进行首尾两数判断,如果相等就加入列表L。最后输出L。

  4. 代码:

    L=[]
    for a in range(1,10):           #循环百位数
        for b in range(0,10):       #循环十位数
            for c in range(0,10):   #循环个位数
                if a==c:                  #判读首尾是否相等
                   L.append(100*a + 10*b+c) #组装三位数并加入列表
    print L


2019-11-08
回复 0

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信