面向对象:
对象–》现实中具体的事物
多个对象–》提取对象的共同特征和动作—》封装到同一个类中;
所有类名要求首字母大写,多个单词使用驼峰式命名;
class Phone:
pass
print(Phone) # <class '__main__.Phone'>
#使用类创建对象
yp = Phone()
print(yp) #<__main__.Phone object at 0x000001B50C150FD0>
往类中放东西:
class Phone:
brand = 'huawei'
print(Phone) # <class '__main__.Phone'>
#使用类创建对象
yp = Phone()
print(yp.brand) # huawei
print(yp) #<__main__.Phone object at 0x000001B50C150FD0>
修改内容:
class Phone:
brand = 'huawei'
print(Phone) # <class '__main__.Phone'>
#使用类创建对象
yp = Phone()
yp.brand = 'iphone' # 赋值操作是在对象空间里,不更改类属性
print(yp.brand) #iphone
#1.定义类和属性
class Student:
# 类的属性 #模子
name = 'xiao'
age = 2
#2.使用类,创建对象
xiaowei = Student()
print(xiaowei.name)# 调用的时候现在自己空间找,找不到再去类空间,如果自己的对象空间有的话,就不会去类空间查找
print(xiaowei.age)
类中的方法:
类中方法 :动作
种类: 普通方法 类方法 静态方法 魔术方法
普通格式方法:
def 方法名(self,参数,参数):
pass
class Phone:
brand = 'xiaomi'
price = '1999'
type = 'good'
def call(self):
print('self--------',self)
print('正在打电话')
phone1 = Phone()
print(phone1.brand)
phone1.call()
输出:
xiaomi
self-------- <__main__.Phone object at 0x0000020FEE36B630>
正在打电话
class Phone:
brand = 'xiaomi'
price = '1999'
type = 'good'
def call(self):
print('self--------',self)
print('正在打电话')
print('留言',self.note)
phone1 = Phone()
phone1.note = '我是phone1的note'
print(phone1,'------------1-------')
phone1.call()
输出:
<__main__.Phone object at 0x00000264CD3BB630> ------------1-------
self-------- <__main__.Phone object at 0x00000264CD3BB630>
正在打电话
留言 我是phone1的note