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

为什么函数返回的input值调用strip()方法后打印时未生效?

问题原因

你的strip()操作本身是正常生效的,异常空格来源于print()函数的默认参数设置,而非answer变量本身的内容。

Python内置print()函数传入多个位置参数时,默认会在相邻参数的输出内容之间插入半角空格作为分隔符,对应默认参数sep=' '。你使用的print(".", answer, ".")共传入3个参数,执行时会自动在第一个.与answer之间、answer与第二个.之间各插入1个空格,你观察到的首尾多余空格就是这两个自动插入的空格,和strip()操作无关。

验证方法

你可以通过以下两种方式确认strip()已经正常生效:

  • 打印answer的长度,比对去掉首尾空白后的预期长度是否一致:
print(len(answer))
  • 打印answer的原始表示,可直接识别是否存在首尾空白:
print(repr(answer))

解决方案

可以通过任意一种方式解决输出空格问题:

  1. 修改print()的分隔符参数,将分隔符设为空字符串:
print(".", answer, ".", sep="")
  1. 先完成字符串拼接再打印,避免多参数自动加分隔符:
# 普通字符串拼接
print("." + answer + ".")
# f-string格式化(推荐)
print(f".{answer}.")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.03 04:09:03