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

这样可以么

print [int(x+y+x) for x in '123456789' for y in '0123456789']


正在回答

4 回答

可以这么写,但是很讨巧,针对这个题目可以,就感觉不是很规范,哈哈不过还是为你点赞!

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

比如x为1,y为2,x+y+x得到的值是1+2+1=4,而不是您想要的结果121。如果想得到121,用x*100+y*10+x得到。

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

慕圣2386694

题主的xyz是字符型的
2018-01-19 回复 有任何疑惑可以回复我~

不行吧,'0123456789' 这不是一个list,for 迭代在list里面才会从中取值。计算后面是list,获取到对应的百位数和十位数,表达式int(x+y+z)只是把两个数相加而已,最后输出要是个数字,可以用X*100+Y*10+X

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

友情与肉丸 提问者

是个list呀,int(x+y+z) 是先把两个list结合,再转成int 保证最后输出的是数字,通过我的代码也可以得到正确答案,我只是不知道是不是规范的
2017-09-22 回复 有任何疑惑可以回复我~

可以的

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

友情与肉丸 提问者

谢谢回复,这样写法是规范的么?请问list里面有没有 类似于range的写法,不用这么0123456789一直列下去?
2017-09-22 回复 有任何疑惑可以回复我~
#2

橡皮dog 回复 友情与肉丸 提问者

是规范的。这里面可以自己写个函数,在里面产生数字然后返回一个list
2017-10-08 回复 有任何疑惑可以回复我~

举报

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

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

进入课程

这样可以么

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