一、python中的类和对象:
1.代码如下:
示例:
import self as self
class Student:
native_place='吉林'
def __init__(self,name,age):
self.name=name#self.name 称为实体属性,进行了一个赋值的操作,将局部变量的name的值赋给实体属性
self.age=age
#实例方法
def eat(self):
print('学生在吃饭.....')
def eat1(self):
print(self.name + '在吃饭')
#静态方法
@staticmethod
def method():
print('我使用了staticmethod进行修饰,所以我是静态方法')
#类方法
@classmethod
def cm(cls):
print("我是类方法,我使用了classmethod进行修饰")
def drink():#函数
print("喝水")
stu1=Student('张三',20)
stu1.eat()
print(stu1.name)
print(stu1.age)
print('------------------------')
#类属性的使用方式
print(Student.native_place)
print('-------类方法的使用方式----------------')
Student.cm()
print('---------静态方法的使用方式-----------------')
Student.method()
print('----------------------------------')
stu2=Student('王五',33)
stu3=Student('赵六',22)
stu2.gender='男'
print(stu2.name,stu2.age,stu2.gender)
print('-----------------------------')
stu2.eat1()
stu3.eat1()
print('----------------------------------')
def show():
print('定义在类之外的称为函数')
stu2.show=show
stu2.show()
print('-----')
stu3.show=show
stu3.show()
2.运行结果:
示例:
学生在吃饭.....
张三
20
------------------------
吉林
-------类方法的使用方式----------------
我是类方法,我使用了classmethod进行修饰
---------静态方法的使用方式-----------------
我使用了staticmethod进行修饰,所以我是静态方法
----------------------------------
王五 33 男
-----------------------------
王五在吃饭
赵六在吃饭
----------------------------------
定义在类之外的称为函数
-----
定义在类之外的称为函数
进程已结束,退出代码为 0
总结:
提示:这里对文章进行总结:
编程界的两大阵营:
面向过程:事物比较简单,可以用线性的思想去解决。
面向对象:事物比较复杂,使用简单的线性思维无法解决。
共同点:面向过程和面向对象都是解决实际问题的一种思维方式
二者相辅相成,并不是对立的
解决复杂问题,通过面向对象方式便于我们从宏观上把握事物之间的复杂的关系,
方便我们分析整个系统,具体到微观操作。仍然使用面向过程方式来解决。
类的创建:
class 类名称:
内容
注意:
类名称的首字母大写,其余小写
直接写在类里的变量称为类属性
在类之外定义的称为函数,在类之内定义的称为方法
类的组成:
类属性:类中方法外的变量称为类属性,被该类的所有对象所共享
类方法:使用@classmethod修饰的方法,使用类名直接访问的方法
静态方法:使用@staticmethod修饰的方法,使用类名直接访问的方法
类属性:
class Student:
native_place='吉林‘ 类属性
def__init__(self,name,age): name age为实例属性
self.name=name
self.age=age
实例方法:
def info(self):
print("我叫:",self.name,"年龄为:",self.age)
静态方法:
@staticmethod
def sm():
print("静态方法")
类方法:
@classmethod
def cm(cls):
print("类方法")
对象的创建:
对象的创建又称为类的实例化
语法:
实例名=类名()
例子:
#创建Student类的实例对象
stu=Student(’Jack‘,20)
print(stu.name)#实例属性
print(stu.age)#实例属性
stu.info() #实例方法
意义:
有了实例,就可以调用类中的内容
对象的调用:
对象名.方法名()
类名.方法名(类的对象)---》实际上就是方法定义处的self
print(Student.native_place) 访问类属性
Student.cm() 调用类方法
Student.method() 调用静态方法
动态绑定属性和方法:
python是动态语言,在创建对象之后,可以动态的绑定属性和方法
def show():
print("我是一个函数")
stu=Student("Jack",20)
stu.gender="男" #动态绑定性别
print(stu.name,stu.age,stu.gender)
stu.show=show #动态绑定方法
stu.show()