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

利用 3 层for循环的列表生成式,找出对称的 3 位数。例如,121

L = []
for a in '123456789':
    for b in '0123456789':
        for c in '123456789':
            if a == c :
                L.append(a+b+c)
print(L)

我想知道我这种思路,是不是就只能写成这样了?

三个for循环,加一个判断语句。不过这里是进行的字符串而不是数字,应该是跟题目不相符合的

正在回答

2 回答

L = []
for m in 'ABC':
    for n in '123':
        for o in 'ABC':
            L.append(m+n+o)
if m == o:
    print L

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

print [a*100+b*10+c for a in range(1,10) for b in range(0,10) for c in range(1,10) if a==c]

这是我自己写的,请指教


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

2uo 提问者

你这个写法跟我的相差太大了,直接print 的话 a*100+b*10+c会报错
2016-08-04 回复 有任何疑惑可以回复我~
#2

whfaaf 回复 2uo 提问者

我这样写可以通过呀
2016-08-06 回复 有任何疑惑可以回复我~

举报

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

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

进入课程

利用 3 层for循环的列表生成式,找出对称的 3 位数。例如,121

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号