python基础——对象、类(创建实例化)


一、编程思想

1.面向过程编程

面向过程编程实际上就是将解决问题的全部过程分解为很多步,然后一一调用下一步就能解决问题。

2.面向对象编程

面向对象编程是将解决问题的每一个环节都变成了一个个个对象,而不是用对象来实现每一个步骤,而是用来描述解决问题的每个环节的。


二、类、对象

类:一些类别、种类的集合,拥有公共特性的对象。
对象:是具有属性和方法的一种事物。对象可以在原基础上属性基础上添加新的属性。

class Play:
    player = "玩家1"
    print("Play被实例化")
    def start_game(self):
        print("打开了",self)

play1 = Play()
print(play1.__dict__)
play1.__dict__["player"] = "玩家3"
print(Play.__dict__)
print(play1.__dict__)
play1.start_game(play1.__dict__["player"])
print(play1.__dict__)
play1.__dict__["player"] = "玩家3"
print(Play.__dict__)
print(play1.__dict__)

在这里插入图片描述

对对象的操作实际上就是对字典的操作,类具有的属性和方法在未被使用之前是不会产生名称空间的,函数中的参数无论是何名字,第一个一定是对象自身

class Play:
    player = "玩家1"
    print("Play被实例化")
    def start_game(self):
        print("打开了",self)

play1 = Play() # 实例化对象
print(play1) # 实例化对象的空间
print(play1.__dict__) # 实例化对象的名称空间
print(Play.__dict__) # 类的名称空间
play1.start_game()
play1.player = "玩家2"
print("改变实例化对象的属性")
print(play1) # 实例化对象的空间
print(play1.__dict__) # 实例化对象的名称空间
print(Play.__dict__) # 类的名称空间
play1.start_game()

在这里插入图片描述
通过以上的代码可以了解,类创建后被实例化内存地址不会变动,对象的属性改变不会影响到类,对象中未被调用的方法不会再名称空间生成,类中的方法在创建时就会生成。

class Play:
    player = "玩家1"
    print("Play被实例化")

    def __init__(self, player):
        self.player = player

    def start_game(nnc):
        print("打开了", nnc.player)

如果调用了类自动调用的__init__方法就需要按照__init__来进行传参,__init__方法不需要自己去调用,只需等待类自行调用即可。

类的创建

class 类名:
定义的变量
定义的函数

对象的创建实例化

对象名 = 类名() # 空对象或者需要传入的数据

对象的内置属性或方法的调用

对象名.属性或者方法


总结

类是拥有公共特征的一堆对象,对象是有公共特征以及私有特征的类实例化而来的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值