实例运行结果为什么多一个None

来源:4-6 Python类的__call__方法

心诚则零

2021-09-29 20:37

class Person(object):
    def __init__(self,name,gender):
        self.name = name
        self.gender = gender
    def __call__(self,friend):
        print('My name is {}...'.format(self.name))
        print('My friend is {}...'.format(friend))
        
p = Person('Bob', 'Male')
print(p('Alice'))

运行结果:

My name is Bob...
My friend is Alice...
None

为什么最后一行还有一个None?

写回答 关注

1回答

  • MrQinJS
    2021-10-02 08:59:52

    执行最后有一个None,是因为python函数使用return返回值,如果不用
    return, 而用print输出值,这个函数默认还有一个返回值为None . 

    心诚则零

    谢谢!

    2021-10-07 15:16:02

    共 1 条回复 >

Python3 进阶教程(新版)

学习函数式、模块和面向对象编程,掌握Python高级程序设计

41956 学习 · 236 问题

查看课程

相似问题