You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python打印指定重复数字图案时多余零问题及合规实现需求

Python 实现指定数字图案(解决多余零问题)

需要生成的图案

1
22
333
4444

实现约束条件

  • 不使用字符串
  • 代码必须为2行
  • 仅允许使用1个for循环
  • 仅接受用户输入
  • 不使用任何额外库

现有问题

尝试的代码可运行,但会额外打印一个零:

for i in range(int(input())):
    print(((10**i)//9)*i)

输入5时输出:

0
1
22
333
4444

解决方案

问题根源是循环从0开始,当i=0时计算结果为0。只需调整循环的起始值为1,并修正数值计算逻辑即可:

方案1

for i in range(1, int(input()) + 1):
    print(((10**i - 1) // 9) * i)

方案2

for i in range(1, int(input()) + 1):
    print(((10**i) // 9) * i // 10)

逻辑说明

  • 循环范围改为range(1, int(input())+1),直接跳过i=0的情况,生成从1到输入值的循环变量
  • (10**i - 1) // 9会生成由i个1组成的整数(例如i=2时得到11),乘以i后就得到i个i组成的数,完美匹配需求
  • 方案2通过//10抵消10**i//9多出来的一位,同样能得到正确结果

内容的提问来源于stack exchange,提问作者Srinu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.14 09:09:53