Python中__new__()方法的作用,举例说明,简单易懂

本文通过举例解释Python中的__new__()方法,以人类和中国人为例,展示如何使用__new__()创建新类型并进行条件判断。分析指出,__new__()可以用于为对象赋予新类型,并实现不同条件下的类型区分。总结了__new__()的两个关键作用:赋予对象新类型和通过条件判定区分同一类型的不同对象。
摘要由CSDN通过智能技术生成

Python中__new__方法的作用,举例说明,简单易懂

举例

以人类、中国人为例:

# 定义一个大类,人类Person
class Person():     # 人类Person
    def __init__(self,name):
        self.name = name    # 属性name:每个人都有自己的名字name
# 按国籍定义一个类,中国人Chinese
# 属性country:国籍,我们都是中国人
class Chinese(Person):      # 中国人一定是人类,所以中国人是人类的子类
    def __init__(self,name,color):
        super(Chinese,self).__init__(name)
        self.country = 'China'      # 中国人的国籍是中国

if __name__ == '__main__':
	# 现在有三个中国人的实例对象,tom、mike、cat,他们的肤色并不相同
	Tom = Chinese('Tom','yellow')   #黄皮肤中国人Tom
	Jerry = Chinese('Mike','white')     # 白皮肤中国人Jerry
	Cat = Chinese('Cat','black')    # 黑皮肤中国人Cat
	print(type(Tom))
	print(type(Jerry))
	print(type(Cat))

输出:
他们都是中国人

<class '__main__.Chinese'>
<class '__main__.Chinese'>
<class '__main__.Chinese'>

现在,我需要根据肤色确定他们的人种,所以要先按人种定义三个新的类

# 按人种定义三个类:黄种人Yellow,白人White,黑人Black
# 独特的属性color:肤色,每个人种都有自己独特的肤色
  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值