如何修改while循环代码实现空格分隔的@字符连续输出?
解决Python输出同一行空格分隔@的问题
嘿,我来帮你搞定这个小问题!你原来的代码里,print()函数默认会在输出内容后添加换行符(\n),所以每次循环都会换行显示一个@。要实现同一行空格分隔的效果,有几种简单的方法:
方法一:修改print的end参数
直接给print指定end参数为空格,这样每次输出@后就会加空格而不是换行:
value = 0 while value < 5: print("@", end=" ") value += 1
不过这个方法会在最后多一个尾部空格,如果不在意的话完全没问题;要是想更严谨,可以稍微调整逻辑,比如只在非最后一个元素时加空格,但对于简单的5次循环来说,第一种写法已经足够好用啦。
方法二:先构建字符串再一次性输出
这种方法更整洁,不会有多余空格的问题。我们可以先把所有@收集到一个列表里,再用空格把它们连接成字符串输出:
# 方式A:直接生成列表 symbols = ["@"] * 5 print(" ".join(symbols)) # 方式B:用循环收集(和你原来的逻辑更贴合) value = 0 result = [] while value < 5: result.append("@") value += 1 print(" ".join(result))
" ".join(symbols)会把列表里的每个@用空格连接起来,输出就是干净的@ @ @ @ @啦。
内容的提问来源于stack exchange,提问作者Evan O'Grady
相关产品推荐
相关产品推荐

