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

如何让Python的print()不换行?实现奇偶数字分单行输出

实现n以内奇数和偶数的单行输出

原代码的问题在于每次循环都会单独打印一个数字,导致逐行输出。要实现单行展示所有偶数和奇数,可以先把数字分别收集到列表中,再统一格式化输出。

修改后的代码如下:

number = input("enter the numbers: ")
int_numb = int(number)

# 收集偶数和奇数
even_numbers = []
odd_numbers = []
for i in range(1, int_numb + 1):
    if i % 2 == 0:
        even_numbers.append(str(i))
    else:
        odd_numbers.append(str(i))

# 单行输出结果
print(f"偶数为{', '.join(even_numbers)}")
print(f"奇数为{', '.join(odd_numbers)}")

关键说明:

  • 用两个列表even_numbers和odd_numbers分别存储转成字符串的偶数和奇数,方便后续拼接
  • 使用', '.join(列表)方法把列表中的元素用逗号加空格连接成一个完整的字符串
  • 最后通过一次print语句输出所有偶数,再一次输出所有奇数,实现单行展示的效果

如果想更简洁,也可以用列表推导式直接生成列表:

number = input("enter the numbers: ")
int_numb = int(number)

even_numbers = [str(i) for i in range(2, int_numb + 1, 2)]
odd_numbers = [str(i) for i in range(1, int_numb + 1, 2)]

print(f"偶数为{', '.join(even_numbers)}")
print(f"奇数为{', '.join(odd_numbers)}")

这里直接用range(2, int_numb+1, 2)生成所有偶数,range(1, int_numb+1, 2)生成所有奇数,省去了判断步骤,代码更高效。

内容的提问来源于stack exchange,提问作者Joyal Jose Punnoor

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 20:55:20