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

Python打印指定高度X对角线遇重复输出问题,求解决方案

问题分析与修复

你需要实现输入高度后,打印对应行数的右对齐X对角线(比如输入3时,每行依次增加一个空格后输出x),但当前代码的问题是嵌套循环导致重复打印了多组对角线:while循环会执行height次,每次循环里的for循环又会完整打印height行,最终输出行数是height的平方,完全不符合预期。

原代码问题拆解

原代码的嵌套逻辑出错了:

print("Input the height")
height = int(input())
line = 0
column = 0
while column != height:
    column = column + 1
    print()
    line = line + 1
    for i in range(height):
        print(' '*i, end = 'x\n')

每次while循环都会触发一次完整的for循环,相当于每走一次外层循环就重新打印一遍整个对角线,自然会重复输出。

修复后的代码

只需要一层循环就能搞定,直接为每一行生成对应空格加x:

print("Input the height")
height = int(input())
for i in range(height):
    print(' ' * i + 'x')

如果习惯用while循环,也可以这么写:

print("Input the height")
height = int(input())
line = 0
while line < height:
    print(' ' * line + 'x')
    line += 1

效果验证

输入3时,输出如下:

x
x
x

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.03 22:45:56