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

Python代码输出中间空格异常增多问题求助

问题分析与解决

你的问题出在print函数的参数处理上:当给print传入多个位置参数时,它默认会用空格作为分隔符连接这些参数。比如你写print(" ", "#"*i, end=""),实际上会输出你手动写的那个空格,再加上print自动添加的分隔空格,所以最终中间会多一个空格。

解决方法有两种:

  1. 合并成单个字符串输出
    把空格和#*i拼接成一个字符串,这样print只接收一个参数,不会自动加分隔空格:
data = 3

for i in range(1, data + 1):
    for j in range(1, data + 1):
        if j > (data - i):
            print("#", end="")
        else:
            print(" ", end="")

        if j == data:
            print(" " + "#" * i, end="")  # 合并成单个字符串

    print()
  1. 设置sep参数为空
    显式指定print的分隔符sep="",这样多个参数之间就不会自动加空格了:
data = 3

for i in range(1, data + 1):
    for j in range(1, data + 1):
        if j > (data - i):
            print("#", end="")
        else:
            print(" ", end="")

        if j == data:
            print(" ", "#" * i, sep="", end="")  # 设置sep为空

    print()

两种方法都能让中间只保留1个空格,运行后输出如下:

# #
 ## ##
### ###

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 19:09:56