python类,了解一下

了解 Python 元类 在 Python 中,元类是定义其他类的行为的类。具体来说,元类是用于创建和自定义其他类的类。 当您在 Python 中定义类时,Python 使用名为 的内置元类自动创建该类type。但是,您可以通过定义继承自 的新类来创建自己的自定义元类type。 元类用于以各种方式修改类的行为。例如,您可以使用元类来: 创建类时修改类的属性。 自动向类添加新方法或属性。 强制执行类的编码标准或约定。 为类实现自定义行为。 要在 Python 中定义元类,您需要创建一个继承自type. 例如: class MyMeta 阅读详情
class Student :  #定义一个类
    myname = 'xiaohong'
    __age__ = 18;
    def __init__(self,sex):      # 构造函数,初始化数据
        self.sex = sex
    def hello(self):#self 类本身
        print('Student hello')

    def say(self,name):
        print('hi ,%s' %name) #  %s是占位符   %name 是方法传进来的参数  相当于局部变量
        print('i am '+ self.myname +', is  ' + self.sex) #   %self   相当于全局变量
        print('i am %s , is %s  , age %i' %(self.myname, self.sex,self.__age__))


    def setage(self,age):
        self.__age__ = age;

s = Student('nan')#创建对象使用括号
s.myname = 'asd'; #公共变量  可以修改
print('age:' + str(s.__age__)) # 私有变量 只能访问  不能修改
s.hello()

s.setage(19)
s.say('xiaohua')


print('*' * 8 )


class  People (Student):  #继承  继承具有传递性
    def hello(self):   #子类覆盖父类的方法
        print(' i am people')

p = People('nan')  # 父类的init 带有参数,子类创建的时候也需要带参数,也就是说默认继承父类的构造方法
print( '使用父类的myname:' + p.myname)
p.setage(15)  # 使用父的方法
p.say('xiaoming')


print( " hasattr(p,'myname') 是否有myname : "+ str(hasattr(p,'myname')))

setattr(p,'addr','python') # 设置属性
print(hasattr(p,'addr'))
print(p.addr)


a = getattr(p,'addr')
print(a)

这是输出

age:18
Student hello
hi ,xiaohua
i am asd, is  nan
i am asd , is nan  , age 19
********
使用父类的myname:xiaohong
hi ,xiaoming
i am xiaohong, is  nan
i am xiaohong , is nan  , age 15
 hasattr(p,'myname') 是否有myname : True
True
python
python

类定义



class animal(object):  #新式类  广度优先
    def __init__(self):
        print('this is animal...')

    def __del__(self):
        print("talk end")


class dog(animal):
    def talk(self):
        print('dog ...talk')

class cat(animal):
    def talk(self):
        print('cat...talk')

d =  dog()

d.talk()


c = cat()
c.talk()

'''
多态
super(父类,self).init() 调用父类的方法
子类的init 可以覆盖父类的init

静态方法
类方法

'''



def animal_talk(obj):
    obj.talk()


animal_talk(d)

静态属性方法


class Dog(object):

    def __init__(self,name='dog',*args,**kwargs):
        self.name = name
        print(name)
        print(args)
        print(kwargs)
        print(kwargs.keys(),kwargs.values())

    def eat(self,food):
        print('%s eating %s ' %(self.name,food))
    @staticmethod #静态方法  不能写self 跟类没有联系
    # @classmethod  类方法
    # @property  属性方法   就是将该方法变成属性   不能修改,删除
    # 方法名.setter  在可以修改
    #方法名.deleter  删除
    def play():
        print('playing...')


d=Dog('xiaoming',18,sex='m')
d.eat('apple')
print('---------')
d2=Dog()
d2.eat('orange')


print('----')

d3=Dog()
d3.play()
Python类和方法的深入了解 本文深入探讨了Python中类的创建、实例化以及方法的使用,包括初始化方法__init__、类方法、静态方法以及如何通过实例传递参数和打印实例。通过具体的代码示例,展示了如何利用这些概念来创建灵活且功能丰富的类。 阅读详情

相关推荐

初识colmap

COLMAP是一款开源的计算机视觉软件,主要用于从一系列二维图像中进行三维重建。它全称为“COLLISION-MAPping”,是一个高度集成的Structure-from-Motion (SfM) 和 Multi-View Stereo (MVS) 管道工具,由斯坦福大学开发和维护。COLMAP的主要功能包括特征检测与匹配、增量式SfM、多视图立体匹配以及优化。它能够从无序或有序的二维照片集合中恢复出三维场景的几何结构(点云)以及每张图像对应的相机姿态。

Hhsjehejj的博客 5552

零基础必知的Python简介!

Python成为了全球最火爆的编程语言,Python在TIOBE排名榜上超过C语言和Java成为第一。Python 是一种极少数能声言兼具 简单 与 功能强大 的编程语言,它专注于如何解决问题,而非拘泥于语法与结构。Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节。

2301_80239908的博客 327

VMware + ubuntu20.04 + qemu安装

遇到报错可参考:(从ubuntu裸系统开始安装)

NosONE 3230

2018.4.8(Python)基本数据类型 天天向上的力量 (def函数的定义)

Q3:工作日的力量 设在一年365天中 周一到周五 每天进步1% 周末两天休息 每天退步1%,那么一年后你的能力是多少p=1.0a=0.01for i in range(365):    if i%7 in [6,0]:    //如果i对7取余数 结果是0或者6那么就为工作日        p=p*(1-a)    else:          p=p*(1+a)print("{:.2f}".f...

深海研究所 1万+

排查单片机不工作的‘玄学’故障:从LDO选型、复位电路到焊接不良的完整避坑指南

本文深入剖析单片机不工作的常见硬件故障,从LDO选型、复位电路设计到PCB布局和焊接工艺,提供系统性排查方法。重点分析3.3V电源稳定性、LDO动态响应特性及复位电路设计要点,帮助工程师快速定位和解决嵌入式系统中的'玄学'故障,提升产品可靠性。

weixin_30655569的博客 387

机器人强化学习入门学习笔记

如果你追求高精度动力学仿真、用于强化学习或机器人研究,MuJoCo 是一个非常优秀的选择。如果需要快速实验、使用真实机器人模型,PyBullet 或 Gazebo可能更合适;如果你追求大规模并行训练,Isaac Gym 或 BraX会更高效。legged gym底层是​编辑isaacgym,基于gpu训练可以多环境并行训练,收敛到一个稳定行走的策略快。本视频MuJoCo基于cpu训练很慢。

xiaomu_347的博客 1465

python了解一下_Python基础语法了解一下(一)

数据类型容器类型强制类型转换标识符变量赋值数据类型 Base Types: integer, float, bollean, string, bytes数据类型1、整型 int: 123 , 0 , -1212、浮点型 float: 2.5 , 0.0 , -1.23、布尔类型 bool: False True4、字符串 str: "ab" , "a\nb" , "I'm" "a\tb\tc"5、...

weixin_31444279的博客 143

Centos7系统添加中文支持(附中文语言包)

这里以centos7.6为例,在安装系统是没有选择中文,之后如果需要添加中文支持。在命令行执行后,会提示启动图形模式失败,转为启动文本模式。文本模式其实和图形模式差不多,操作需要用键盘而不是鼠标。在弹窗后,通过上下键选择Chinese(P.R of China) - 中文(简体):然后,按Tab键选择Yes,点击回车。rebootlocale可以看到系统语言已经变成了zh_CN.utf-8:之后,服务器上的中文名称就可以正常显示正常了。

悦分享 683

python实例---天天向上的力量

version 1 #daydayup.py dayfactor=0.005 dayup=pow(1+dayfactor,365) daydown=pow(1-dayfactor,365) print(“向上:{:.2f},向上,向下:{:.2f}''.format(dayup,daydown)) version 2 #daydayupq3.py dayup=1.0 dayfactor=0.0...

不停 2946

AUTOSAR-SOMEIP配置总结

导入arxml之后someip信号一般以“pduSomeIp”开头或者“SomeIp”开头。以某个pdu为例,设置项“Pdu Default Partition Ref”主要是根据模块设计,配置相应的Ecuc核分区。在导入arxml之后someip信号中有三个特殊的信号,形如“SdInstance”开头的信号,设置项“Pdu Default Partition Ref”主要是根据模块设计,配置相应的Ecuc核分区。“EcuC”模块主要关注“EcucPduCollection”中的“Pdus”下面的配置。

xiandang8023的博客 4654

STM32入门教程:水位传感器应用

这是一个简单的STM32水位检测系统的入门教程。希望通过学习本教程,您能对STM32微控制器的基本应用有更深入的了解,并能成功构建一个水位检测系统。如果您需要更详细的代码实例和教程,请参考相关的STM32开发手册和应用笔记。STM32是一款功能丰富且广泛应用于嵌入式系统的微控制器系列。在本教程中,我们将介绍如何使用STM32微控制器和水位传感器构建一个水位检测系统。

wx_linying1029的博客 533

你为什么不来了解一下Python?

一、什么是Python Python [1]  (英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/), 是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum发明。Python 被称为是最接近 AI 的语言。几乎所有的深度学习框架都要用到 Python 来编程。 Python的设计哲学是“优雅”、“明确”、“简单”。因此,Perl语言中“总是有多种方法来...

miniAlisa的博客 769

大模型知识边界探索:LLM设计的极限测试

最优化理论是数学中的一个分支,主要研究如何从给定的一组约束条件下找到最优解。目标函数:定义了需要优化的指标,可以是最大化或最小化。约束条件:定义了在优化过程中需要满足的限制条件。无约束优化:目标函数和约束条件都不存在。有约束优化:目标函数存在,但存在约束条件。多目标优化:同时需要优化多个目标函数。极限测试(Ultimate Test)是一种系统性的方法,用于评估大型模型(如LLM)在极端条件下的性能和稳定性。极端数据分布:与模型训练数据分布显著不同的数据集。极端计算资源。

AI天才研究院 432

快速了解python的类

类是指相同事物的集合。ython 的类(Class),是用于创建对象(Object)。类定义了对象的属性和方法,通过类,可以封装数据和行为,实现代码复用和模块化。

wzdzgdf的博客 915

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

[python]一分钟了解关于python的类

1.类的定义python中类的定义,以员工类定义:class Employee: '员工基类' count=0 def __init__(self,name,sex): self.name=name self.sex=sex def count(self): return Employee.count def s

Forgive Me 543

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

了解Python中的类

Python中的类是面向对象编程的核心,用于封装数据(属性)和操作数据的方法(行为)

weixin_56449709的博客 665

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

python类的了解及练习(快速了解)

练习1 - 声明一个电脑类 属性:品牌、颜色、内存大小 方法:打游戏、写代码、看视频 a.创建电脑类的对象,然后通过对象点的方式获取、修改、添加和删除 它的属性 b.通过attr相关方法去获取、修改、添加和删除它的属性 class Computer: def __init__(self,brand,color,ram): self.brand = brand self.color = color self.ram = ram de

刘欣的博客 695

python类里面放类_带你了解Python的类里面经常看到的self

在定义类的过程中,无论是显示创建类的构造方法,还是向类中添加实例方法,都要求将 self 参数作为方法的第一个参数,那么我们如何去理解这个self呢?下面就带你简单了解一下通过比喻的方式去理解self并不是一个固定的参数,而是约定俗成。怎么理解呢?比如说:大家一听到大熊猫就知道这个是国宝(在这里特指国家保护动物吧),但是国宝并不等于大熊猫,用这两个比喻就是:国宝=类的第一个传参,属于描述,也就是泛...

weixin_34193479的博客 875

python元类的简单了解

一、什么是元类? 在python中一切皆对象,那么类是否也是对象呢?通过class关键字产生的类的实例,我们已经很熟悉了,但是通过class关键字产生的类的类就是元类。 class Bar: pass b1 = Bar() print(type(b1)) #<class '__main__.Bar'> print(type(Bar)) #<class 'type'> 可以看到b1对象是由类Bar产生的,而Bar类是由type这个元类产生的,type是python中的一个

Python热爱者的博客 318

Python类继承:深入了解

前段时间刚好学习了,C++中类方面的内容,发现和Python中有许多不同之处,尤其是在类的继承这一块,今天有空,正好写篇文章,记录一下有兴趣的东西,也算是对Python的一个复习。

m0_58233509的博客 637

Python 触“类”旁通1|以单链表为例,一步步深入了解类

前提知识点 概念定义略,见上一篇文章的介绍: 链接地址点这里快速到达 一个最基础的节点类 就一个初始化方法 __init__() class Node(): def __init__(self, value=None, Next=None): self.val = self.value = value self.next = Next ''' # 测试: >>> node = Node(1) >>> node..

汉阳Hann's Home 1900

小白了解Python中类装饰器,看这篇就够了

Python是一门入门容易精通难的语言,可能你花1-2个月就能入门,但是随着时间的深入,你越研究发现Python内在的内容很深,而且很复杂! Python中难的知识点很多。

weixin_55154866的博客 1116

python3元类_深入了解python中元类的相关知识

类也是对象在大多数编程语言中,类就是一组用来描述如何生成一个对象的代码段,在python中也是成立的。class ObjectCreator:passmy_object = ObjectCreator()print(my_object)"""输出结果:"""但是,python的类不止于此,类同样也是一种对象。class ObjectCreator:pass上面的代码段将在内存中创建一个对象,名字就...

weixin_39620535的博客 79

一片文章带你了解PYTHON中类的概念

第7行代码创建了一个方法print_info(),用于获取微波炉的属性信息,该方法中的形参为self,其作用为将初始化的self属性信息传递到print_info()方法中,因此在print_info()方法中可以继续使用self属性,这是因为函数内部的变量是局部变量,这里创建的方法的功能和函数的功能类似,如果需要在其他方法中使用self属性,也需要将self属性信息传递进方法中。类中的方法在调用类中的其他方法时的使用形self,方法名(参数),其中self表示调用的方法是类自己的。

2501_91113915的博客 1042

快速了解python元类

Python元类(metaclass)是创建类的类,允许动态修改类的创建过程。通过继承type并重写__new__、__init__和__call__方法实现:__new__负责创建类对象,__init__初始化类,__call__控制实例生成过程。例如使用type("Person", (object,), {...})可动态创建类,而自定义元类MyMeta能拦截类的创建和实例化过程,在metaclass=MyMeta的类实例化时会依次触发这些方法。元类为Python提供了强大的类定制能

2601_96523548的博客 185
上一篇: IBM WebSphere MQ 8.0 ,了解一下
下一篇: Django 2.0 项目起步,了解一下
go_sparrow
博客等级 码龄11年 25粉丝 257原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值