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

如何去除Python十进制转二进制脚本打印的末尾%符号

解决十进制转二进制脚本末尾的%符号问题

嘿,那个烦人的%符号其实不是你的Python脚本输出的!它是终端(比如zsh这类shell)的命令提示符——因为你用了print(..., end="")让所有二进制数字连在一起输出,但最后没有加换行符,终端就直接在当前行末尾显示了它的提示符,看起来像是输出的一部分。

快速解决办法

在你的循环结束后,加一个不带任何参数的print(),它会自动输出一个换行符,把终端提示符推到下一行:

first=int(input("input a decimal number to convert to a binary: "))
toBase=2
first2=first
char=0
char2=0
char3=0
while first2!=0:
    first2//=2
    char+=1
binNum=[0]*char
while first!=0:
    rem=first%2
    first//=2
    binNum[char2]=rem
    char2+=1
for loop in range(char):
    char3-=1
    print(binNum[char3],end="")
print()  # 新增这一行,输出换行

额外小技巧:用Python内置函数简化代码

其实Python自带了十进制转二进制的内置函数bin(),可以帮你省去手动写循环的麻烦:

decimal_num = int(input("input a decimal number to convert to a binary: "))
binary_num = bin(decimal_num)[2:]  # [2:]去掉开头的'0b'前缀
print(binary_num)

这样输出的结果自动带换行,也不会出现提示符混在一起的问题啦~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.14 08:22:37