python类

python对象的属性引用另一个类的

末鹿安然 提交于 2019-12-02 10:59:58
class GameRole: def __init__(self, name, ad, hp): self.name = name self.ad = ad self.hp = hp def attack(self, p): p.hp = p.hp - self.ad if p.hp > 0: print("%s攻击%s,%s掉了%s点血,还剩%s点血" % (self.name, p.name, p.name, self.ad, p.hp)) else: print(p.name + "死亡") def arm_weapon(self, wea): self.wea = weaclass Weapon: def __init__(self, name, ad): self.name = name self.ad = ad def fight(self, p1, p2): p2.hp = p2.hp - self.ad if p2.hp > 0 and p1.hp > 0: print("%s用%s打了%s,%s掉了%s点血,还剩下%s点血" % (p1.name, self.name, p2.name, p2.name, self.ad, p2.hp)) else: p2.hp = 0 # print(p2.name + "死亡,游戏结束")p1 = GameRole("盖伦"

python学习笔记之---类的属性和方法的访问总结

拈花ヽ惹草 提交于 2019-12-01 22:50:26
类的概念:一组相关数据,和操作这组数据的方法。 属性(类变量、实例变量) 方法(实例方法、类方法、静态方法) 那么这些属性和方法是怎么去访问的呢?下面进行总结,方便对比和记忆: class Person: count = 0 #类变量 nation = "中国" def __init__(self,name,gender): self.name = name self.gender = gender Person.count +=1 def get_name(self):#实例方法,必须要实例化 return self.name #类方法:可以使用类变量,不能使用实例变量 #通过类名来使用,类名.get_instance_count() #也可以通过实例调用,实例对象.get_instance_count() @classmethod def get_instance_count(cls): return Person.count @classmethod def create_a_instance(cls): return Person("张","女") @staticmethod #静态方法:不需要self和cls def get_nation(): return Person.nation wulaoshi = Person("吴老师","Male") #实例化

python中继承父类的例子(python3的语法)

限于喜欢 提交于 2019-12-01 12:03:11
#coding=utf8 class Cup:   #构造函数,初始化属性值   def __init__(self,capacity,color):     self.capacity=capacity     self.color=color   def retain_water(self):     print("杯子颜色:"+self.color+",杯子容量:"+self.capacity+",正在装水.")   def keep_warm(self):     print("杯子颜色:"+self.color+",杯子容量:"+self.capacity+",正在保温.") class Luminous_Cup(Cup):   #构造函数,调用父类的构造函数初始化属性值   def __init__(self,capacity,color):     super().__init__(capacity,color)   def glow(self):     print("我正在发光...") currentCup=Luminous_Cup('300ml','翠绿色') currentCup.retain_water() currentCup.glow() 来源: https://www.cnblogs.com/xiaoxiaoshuaishuai0219/p

Python_类的继承

牧云@^-^@ 提交于 2019-12-01 11:51:13
1.新建子类时,括号内要传入继承的父类名 2.super()方法:自动寻找当前类的父类,并调用父类的构造函数,初始化属性值 class Cup: #构造函数,初始化属性值 def __init__(self,capacity,color): self.capacity=capacity self.color=color def retain_water(self): print("杯子颜色:"+self.color+",杯子容量:"+self.capacity+",正在装水.") def keep_warm(self): print("杯子颜色:"+self.color+",杯子容量:"+self.capacity+",正在保温.") class Luminous_Cup(Cup): #构造函数,调用父类的构造函数初始化属性值 def __init__(self,capacity,color): super().__init__(capacity,color) def glow(self): print("我正在发光...") currentCup=Luminous_Cup('300ml','翠绿色') currentCup.retain_water() currentCup.glow() 来源: https://www.cnblogs.com/myfy/p/11684089

Python基础 5.类

匆匆过客 提交于 2019-12-01 09:14:58
5.1 类定义和方法 1 .类的定义: 类 是一个独立存放变量(属性/方法)的空间 class 类名: pass​ 实例名 = 类名() 2.运算符“.” 调用类的属性或方法 实例可以访问类的属性类不可以访问实例的属性实例也是一个独立存放变量的空间实例和实例没有关联 本身没有这个属性 就会去类中找 3.私有属性 在python中有两私有属性,分别是在属性前加 一个下换线(_) 和两个下划线(__) 一个下滑线外部可以直接访问,二个下划线外部不可以直接访问 4.方法 就是封装在类里的一种特殊的函数 5.“实例方法” self代表实例本身 表示的是“实例”的行为给实例用的,和函数的传参一样,只是会先传一个自身的实例self,​方法总是定义在类中的,但是却叫“实例方法”,因为它表示该类所有实例所共有的行为 class persson(object): def eat(self): print('{}正在吃烦'.format(self.name)) return 100​nanbei=persson()nanbei.name='南北'a=nanbei.eat()print(a) 5.2 初始化和析构 (dir查看属性与方法) Python中有很多以双下划线开头且以双下划线结尾的固定方法。他们会在特定的时机被触发执行。 init 就是其中之一,它会在实例化之后自动被调用。以完成实例的初始化。

python 类的特殊方法

99封情书 提交于 2019-12-01 09:05:50
python对象的魔法方法 魔法方法 含义 基本的魔法方法 __new__(cls[, ...]) 1. __new__ 是在一个对象实例化的时候所调用的第一个方法 2. 它的第一个参数是这个类,其他的参数是用来直接传递给 __init__ 方法 3. __new__ 决定是否要使用该 __init__ 方法,因为 __new__ 可以调用其他类的构造方法或者直接返回别的实例对象来作为本类的实例,如果 __new__ 没有返回实例对象,则 __init__ 不会被调用 4. __new__ 主要是用于继承一个不可变的类型比如一个 tuple 或者 string __init__(self[, ...]) 构造器,当一个实例被创建的时候调用的初始化方法 __del__(self) 析构器,当一个实例被销毁的时候调用的方法 __call__(self[, args...]) 允许一个类的实例像函数一样被调用:x(a, b) 调用 x.__call__(a, b) __len__(self) 定义当被 len() 调用时的行为 __repr__(self) 定义当被 repr() 调用时的行为 __str__(self) 定义当被 str() 调用时的行为 __bytes__(self) 定义当被 bytes() 调用时的行为 __hash__(self) 定义当被 hash()

第52天学习python 子类调用父类方法

拈花ヽ惹草 提交于 2019-12-01 07:12:06
#子类中调用父类#初步程序# class Vehicle:#定义交通工具# Country="China"# def __init__(self,name,speed,load):# self.name=name# self.spedd=speed# self.load=load## def run(self):# print("开动了")## class Subway(Vehicle):#定义个地铁# def __init__(self,name,speed,load,line):# self.name=name# self.spedd=speed# self.load=load# self.line=line## def show_info(self):# print(self.name,self.line)## line13=Subway("北京地铁","100m/s","1000","13")## line13.show_info()## #子类调用父类# class Vehicle:#定义交通工具# Country="China"# def __init__(self,name,speed,load):# self.name=name# self.spedd=speed# self.load=load## def run(self):# print("开动了")##

Python3 类的继承

纵饮孤独 提交于 2019-12-01 02:59:06
目录 继承的基本概念 什么是继承 继承有什么用 如何实现继承 初识继承 寻找继承关系 如何寻找继承关系 实例演示 继承背景下的对象属性查找顺序 派生 新式类和经典类 钻石继承 通过继承实现修改json模块数据类型 继承的基本概念 什么是继承 继承指的是一种新建类的方法, 新建的类称之为子类或者派生类 子类继承的类叫做父类, 也称之为基类或者超类 类的特征: 子类可以继承父类的属性(特征和技能), 并且可以派生出自己的属性(特征和技能) 在Python中, 一个子类可以继承多个父类(多继承) 继承有什么用 继承的目的是减少代码的冗余(减少重复代码) 如何实现继承 在定义类时候, 通过 class 子类(父类): 实现继承 初识继承 下面我们就通过代码来实现继承 # 父类 class ParentClass1: pass # 父类 class ParentClass2: pass # 子类 单继承 class ChildClass1(ParentClass1): pass # 子类 多继承 class ChildClass2(ParentClass1, ParentClass2): pass 我们可以通过 __bases__ 方法来查看当前类继承的父类 # 查看当前类的父类 print(ChildClass1.__bases__) # (<class '__main__

python 类

百般思念 提交于 2019-11-30 23:39:51
类定义使用class 关键字 class 类名(父类可有多个 支持多继承):   属性(和java一样)   实例方法   def __init__(self,属性):     self.属性 = 属性 class myclass(object): name = "" id = "" def __init__(self,name): self.name=name def __init__(self,name,id): self.name = name self.id = id def __str__(self): print(self.name+str(self.id)) return super.__str__(self) 无法支持重载 c1 = myclass('a',55) c2 = myclass('b') print(c1) print(c2)   可以依靠默认参数 class myclass(object): name = "" id = "" def __init__(self,name,id=18): self.name = name self.id = id def __str__(self): print(self.name+str(self.id)) return super.__str__(self) c1 = myclass('a',55) c2 =

Python 入门 之 类成员

断了今生、忘了曾经 提交于 2019-11-30 14:45:44
Python 入门 之 类成员 1、类的私有成员: 私有: 只能自己拥有 以 __ 开头就是私有内容 对于每一个类的成员而言都有两种形式: - 公有成员,在任何地方都能访问 - 私有成员,只有在类的内部才能使用 私有成员和公有成员的访问限制不同: 静态字段(静态属性) - 公有静态字段:类可以访问;类内部可以访问;派生类中可以访问 - 私有静态字段:仅类内部可以访问; class Human: live = "有思想" # 类公有的属性 __desires = "有欲望" # (程序级别)类私有的属性 _desires = "有欲望" # (程序员之间约定俗成)类私有的属性 def __init__(self,name,age,sex,hobby): self.name = name self.age = age self.sex = sex # 对象的公有属性 self.__hobby = hobby # 对象的私有属性 def func(self): # 类内部可以查看对象的私有属性 print(self.__hobby) def foo(self): # 公有方法 # 类内部可以查看类的私有属性 print(self.__desires) def __abc(self): # 私有方法 print("is abc") class B(Human): pass def run