python--对象

本文介绍了Python面向对象编程的基础概念,包括类的定义、对象的创建与属性赋值。通过实例展示了如何定义成员方法,特别强调了self关键字的作用。文章还探讨了类和对象的关系,指出类作为设计图纸,对象是根据图纸创建的实体。最后,提到了构造方法`__init__()`用于初始化对象属性,并展示了如何通过构造方法传入参数为对象赋值。
摘要由CSDN通过智能技术生成

一、初识对象

1.在程序中设计表格,称为 设计类class


 

class Student:

        name = None               #记录学生姓名

2.在程序中打印生产表格 我们称之为创建对象

#基于类创建对象
stu_1 = Student()
stu_2 = Student()

3.在程序中填写表格,我们称之为 对象属性赋值

stu_1.name = "周杰伦" #为学生1对象赋予名称属性值
stu_2.name = "林君节" #为学生2对象赋予名称属性值

二、成员方法

类的定义和使用

1.类的使用语法:

class 类名称:                  

        类的属性

        类的行为

·class 是关键字,表示要定义类了

·类的属性,即定义在类中的变量(成员变量)

·类的行为,即定义在类中的函数(成员方法)

创建类对象的语法:

对象 = 类名称()

2.类的行为(方法)

class Student:
    name = None  # 学生姓名
    age = None  # 学生的年龄

    def say_hi(self):
        print(f"hi大家好,我是{self.name}")


stu = Student()
stu.name = "周杰伦"
stu.say_hi()


------------------
hi大家好,我是周杰伦

Process finished with exit code 0

类中 定义的属性(变量) 我们称之为:成员变量

类中定义的行为(函数) 我们称之为:成员方法

从今天开始,定义在类内部的函数我们称之为方法

类外的函数 叫函数

3.成员方法的定义语法

在类中定义成员方法和定义函数基本一致 但仍有细微区别

def 方法名(self,形参1,.......,形参N):

        方法体

可以看到 在方法定义的参数列表中  有一个:self关键字

self关键字是成员方法定义的时候 必须填写的

· 它用来表示类对象自身的意思

· 当我们使用类对象调用方法的时候 self会自动被python传入

· 在方法内部想要访问类的成员变量 必须使用self

eg: self.name

self关键字中,尽管在参数列表中,但是传惨的时候可以忽略它

如:

class Student:
    name = None

    def say_hi(self):
        print("hello")
        
    def say_hi2(self,msg):
        print(f"hello,{msg}")


stu = Student()
stu.say_hi()
stu.say_hi2("nice")

----------------
hello
hello,nice

Process finished with exit code 0

可以看到,在传入参数的时候 self 是透明的。可以不用理会它

三、类和对象

1.世界的事物由 属性和行为组成

类也可以包含 属性和行为 所以使用类描述现实世界事物 是非常合适的

2.类和对象的关系是什么?

类是程序中的设计图纸

对象是基于图纸生产的具体实体

3.什么是面向对象编程?

面向对象编程就是 使用对象进行编程

设计类 使用类创建对象 并使用对象来完成具体的工作

4 构造方法

使用构造方法向成员变量赋值

思考: Student()

这个括号能否像函数那样通过传惨的形式对属性赋值?

  --可以 使用构造方法 :

__init__()

python类使用:

__init__() 方法 称之为构造方法

可以实现:

        在创建类对象(构造类)的时候 会自动执行

        在创建类对象(构造类)的时候,将传入参数自动传递给__init__() 方法使用

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值