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

求问这样为什么不对啊

for x in range(1,10):

  for y in range(0,10):

    for z in range(0,10):

      if x == z:

        print 100 * x + y + z 


正在回答

3 回答

你的十分位,需要*10啊

1 回复 有任何疑惑可以回复我~
#!/usr/bin/env python
# -*- coding: utf-8 -*-
'''
任务
利用 3 层for循环的列表生成式,找出对称的 3 位数。例如,121 就是对称数,因为从右到左倒过来还是 121。
'''
# 第一种方法
sum = []
for x in range(1,10):
    for y in range(0,10):
        for z in range(1,10):
            if x == z :
                sum.append(int(str(x)+str(y)+str(z)))
print sum

# 第二种方法
print [int(str(x)+str(y)+str(z)) for x in range(1,10) for y in range(0,10) for z in range(1,10) if x == z]

# 第三种方法
print [100*m+10*n+m for m in range(1,10) for n in range (0,10)]

L = []
for x in range(1,10):
    for y in range(0,10):
        L.append(100 * x + 10 * y +x)
print L

# 第四种方法
print [x for x in range(100,1000) if  x / 100 == x % 10]

# 第五种方法
x = []
for i in range(100,1000):
    if str(i)[::-1] == str(i):
        x.append(i)
print x

print [i for i in range(100,1000) if str(i)[::-1] == str(i) ]


6 回复 有任何疑惑可以回复我~
#1

蔡叉叉o

很不错哦
2018-04-25 回复 有任何疑惑可以回复我~

        print 100 * x + y*10 + z 

你的Y忘记是10位的,要乘10了

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
初识Python
  • 参与学习       758620    人
  • 解答问题       8667    个

学python入门视频教程,让你快速入门并能编写简单的Python程序

进入课程

求问这样为什么不对啊

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信