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

如何使用for循环打印字符串且不显示空格?

问题根源

你这段代码的问题出在两个地方:

  1. sep=''完全没用——sep是用来分隔print里多个参数的,比如print('a','b',sep='')会输出ab,但你每次只传一个字符i,这个参数根本发挥不了作用。
  2. print默认打完一个内容就换行,所以每个字符单独占一行,看起来就像到处是空格。
解决办法

分两种情况给你方案:

1. 保留原字符串的空格,只是让所有字符连起来打印(不换行)

把print的end参数改成空字符串就行,它控制每次打印完的结尾字符,默认是换行符,改成空就不会换行了:

N = input()
for i in N:
    print(i, end='')

输入My dog is blue的话,输出就是My dog is blue(无换行)。

2. 去掉原字符串里的空格,再连起来打印

如果是想把空格删掉,有两种简单方式:

方式一:直接处理字符串后打印

N = input()
print(N.replace(' ', ''))

方式二:循环时跳过空格

N = input()
for i in N:
    if i != ' ':
        print(i, end='')

这两种方式输入My dog is blue,都会输出Mydogisblue。

额外说明

sep参数得是print里传多个值的时候才有用,比如print('hello', 'world', sep='_')会输出hello_world,别再用错地方啦。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 21:25:29