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

Python代码运行后输出底部出现None的原因及解决方法

问题原因

你的check_coins()函数内部只有print语句,没有定义返回值。在Python里,任何没有return语句的函数,默认都会返回None。而你最后一行写了print(check_coins()),这会先执行函数里的打印逻辑输出你需要的内容,紧接着又把函数返回的None打印出来,所以底部会多出这个额外的None。

解决方法

有两种简单的修复方式:

方式一:直接调用函数,不用print包裹

把最后一行的print(check_coins())改成check_coins(),因为函数内部已经完成了打印操作,不需要再打印函数的返回值。修改后的代码如下:

insert = input("Insert Coin: ")
insert = int(insert)
amount_due = 50 - insert

def check_coins():
    if insert >= 0 and insert < 50:
        print("Amount Due:", amount_due)
    elif insert > 50:
        print(insert - 50)
    else:
        print("Amount Due:", amount_due)

check_coins()

方式二:让函数返回内容,外部统一打印

修改函数,把内部的print换成return,然后外部用print输出函数的返回值。这样逻辑更清晰,也避免重复打印。修改后的代码如下:

insert = input("Insert Coin: ")
insert = int(insert)
amount_due = 50 - insert

def check_coins():
    if insert >= 0 and insert < 50:
        return f"Amount Due: {amount_due}"
    elif insert > 50:
        return insert - 50
    else:
        return f"Amount Due: {amount_due}"

print(check_coins())

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 12:29:54