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

Python编写乘法表函数运行后输出多余None,该如何处理?

问题原因
  • print() 函数本身的返回值就是None,你在循环里把print()的返回值赋值给x,循环结束后x存的就是最后一次print()的返回值,也就是None
  • 调用table函数的时候外面又套了一层print(),相当于把table函数返回的None又打印了一遍,所以输出末尾会多出来None
修改方案

两种改法任选其一即可,更推荐第二种写法,冗余代码更少:

改法1:调用函数时去掉外层print

table函数内部已经完成了乘法表的打印逻辑,不需要再用print接收它的返回值,直接调用即可:

def table(n):
    for i in range(1,6):
        j=i*n
        x = print(f"{i} * {n} = {j}")
    return x
# 移除外层的print包裹
table(int(input("enter the number :")))

改法2:删除函数内无用的赋值和返回逻辑

你不需要存储print的返回值,也不需要函数返回额外内容,直接简化函数逻辑即可:

def table(n):
    for i in range(1,6):
        j=i*n
        print(f"{i} * {n} = {j}")

table(int(input("enter the number :")))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 14:45:01