NZPE1 2022-05-16 07:47 采纳率: 100%
浏览 47
已结题

这几行python代码怎么缩减为一行呢?

for i in range(1,10):
for k in range(1,i):
print(end=" ")
for j in range(i,10):
print("%d*%d=%2d" % (i, j, i*j), end=' ')
print('\n')

  • 写回答

2条回答 默认 最新

  • A Python 萌新花花 2022-05-16 07:56
    关注
    
    print(*[[["%d*%d=%2d" %(i, j, i*j) for j in range(i,10)] for k in range(1,i)] for i in range(1,10)])
    

    大概长这样。
    print的换行和end的这个功能肯定没法实现,毕竟迭代器不是神器。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
    A Python 萌新花花 2022-05-16 07:57

    求采纳

    1
    回复
    2301_77597912 2023-04-12 16:59

    print(*['%d*%d=%-3d%c' %(i,j,j*i,(i==j)*10) for j in range(1,10) for i in range(1,j+1)],sep='') 加个判断是否在后面加换行符就行了 在进行一些修改出来的就是完美的99乘法表

    回复
查看更多回答(1条)
编辑
预览

报告相同问题?

问题事件

  • 系统已结题 5月25日
  • 已采纳回答 5月18日
  • 创建了问题 5月16日
手机看
程序员都在用的中文IT技术交流社区

程序员都在用的中文IT技术交流社区

专业的中文 IT 技术社区,与千万技术人共成长

专业的中文 IT 技术社区,与千万技术人共成长

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

关注【CSDN】视频号,行业资讯、技术分享精彩不断,直播好礼送不停!

客服 返回
顶部