类是一个抽象概念,是对一群具有相同特征或者行为的事物一个统称,是抽象,不能直接使用
对象是类的具体事例,归属某个对象的具体的东西,类创建对象的模板。
类由属性和方法组成
创建类语法
类名所有单词首写字母大写
__init__也叫构造函数,创建对象时候自动运行,也可以省略
self变量绑定的是被创建对象。
class Phone:
def __init__(self, brand, price, colour):
self.brand = brand
self.price = price
self.colour = colour
def call(self):
print("我是手机能通讯!")
#实例化对象过程
iphone = Phone(‘apple‘, ‘6788‘, ‘red‘)
iphone.call()
2. \__name__作用
\_\_name\_\_直接运行py文件时候,值是\__main__。如果这个py文件作为模块导入的时候,\_\_name\_\_是文件名称,一般作为脚本入口使用.
3. 包就是将多个具有相似或者关联的多个模块放在一个文件夹里,便于统一管理,我们称这个文件夹为包,python包里面都会有\_\_init\_\_.py文件
> 例子:删除列表中元素为奇数的元素
```python
list01 = [3, 7, 5, 6, 7, 8, 9, 13]
length = len(list01)
while length > 0:
length = length - 1
if (list01[length]) % 2 != 0:
list01.pop(length)
#删除列表元素从后往前删除,从前往后删除,后面元素下标会变成前一个元素下标。
实例成员
实例变量
class Wife:
pass
w01 = Wife()
#创建实例变量,但是不建议这么做。一个类成员一般由定义类时候决定,不是由使用类时候决定。
w01.name = ‘李小凤‘
w01.name = ‘范冰冰‘
print(w01.name)
实例方法
语法
(1)定于:def 方法名称(self, 参数列表):
(2)调用:对象地址.实例方法名称(参数列表),不建议通过类名去调用
(3)至少有一个形参,第一个参数绑定调用这个方法对象,一般命令为self
(4)无论创建多少个对象,方法只有一份,并且被所有。并且被所有对象共享。
```python
class Dog:
def __init__(self, pingZhong, nike, age, weight=0):
self.pingZhong = pingZhong
self.nike = nike
self.age = age
self.weight = weight
# 生成参数的快捷键:alt + 回车
def eat(self):
print(self.nike, "要吃东西!")
def cry(self):
print(self.nike, "会呼叫主人!")
d01 = Dog(‘金毛‘,‘旺财‘, 23, ‘50KG‘)
d01.eat()
类成员
类变量:在类里面,在成员方法和类方法之外的变量
类方法:
定义:
@classmethod
def 方法名称(cls,参数列表)
方法体
调用:
类名.方法名(参数列表)
不建议通过对对象方位类方法
class ICBC:
# 类变量
total_money = 10000000
# 类方法
# 类方法主要作用就是操作类变量
@classmethod
def printTotalMoney(cls):
print("总行的钱是", cls.total_money)
def __init__(self, name="", money=0):
self.name = name
self.money = money
# 访问类变量是类名.变量名
ICBC.total_money -= money
ICBC.printTotalMoney()
i01 = ICBC("深圳分行", 3000000)
i02 = ICBC("广州分行", 4000000)
全局变量:存储在文件中 局部变量:存储在栈帧中 类变量:存储在类中 实例变量:存储在对象中 当以后想表达自己的数据就用实例变量, 当你表达大家数据就用类变量
原文:https://www.cnblogs.com/Hi-Son/p/14111876.html