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

Python循环问题:绘制XY轴图形输出顺序错误求助

Python XY轴图形绘制代码修复

问题描述

我是Python初学者,需要编写一段绘制XY轴图形的代码,但当前代码输出顺序错误,无法得到预期效果。

错误代码

dimx = int(input('lengte van de x-as: '))
dimy = int(input('lengte van de y-as: '))
b = int(input('b: '))
print("^")
for x in range(dimy):
    print("|")
    if x == b+1:
        for x in range(dimx):
            print("-",end="")
print("+"+"-"*dimx + ">")

错误输出

^
|
|
|
|
|
|
------------------------------|
|
|
|
+------------------------------->

期望输出

^
|
|
|
|
|
|
|------------------------------
|
|
|
+------------------------------->

修复方案

问题出在print("|")会自动添加换行符,导致横线打印在了下一行,而目标行需要|后面直接跟随横线。调整代码的打印逻辑,让|和横线在同一行输出:

dimx = int(input('lengte van de x-as: '))
dimy = int(input('lengte van de y-as: '))
b = int(input('b: '))
print("^")
for x in range(dimy):
    # 先打印|,不自动换行
    print("|", end="")
    # 如果是目标行,打印横线后换行
    if x == b+1:
        print("-" * dimx)
    # 非目标行直接换行
    else:
        print()
print("+" + "-"*dimx + ">")

代码说明

  • 将print("|")改为print("|", end=""),取消自动换行,让后续的横线能跟在|后面。
  • 目标行判断成立时,打印完横线后直接换行;非目标行仅执行换行操作,保证每行只有一个|。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 01:30:47