首页 > 编程语言 >Numpy_矩阵的multiply_python的属性以及类特性_装饰器——@property_@classmethod_@staticmethod

Numpy_矩阵的multiply_python的属性以及类特性_装饰器——@property_@classmethod_@staticmethod

时间:2023-05-26 18:35:34浏览次数:35  
标签:调用 python classmethod staticmethod cls property 方法 属性

Python类中有三个常用的装饰器

 分别是
  @property(使一个方法可以被当成属性调用,常用于直接返回某一不想被修改的属性)
  @classmethod(将一个方法定义为类方法,其中第一个参数要修改为cls,使得该方法可以不用实例化即可被调用)
  @staticmethod(静态方法,类似于类方法,也可以不用实例化,只不过该方法恰好处于类中)

@property

@property装饰器来创建只读属性,
@property装饰器会将方法转换为相同名称的只读属性,可以与所定义的属性配合使用,这样可以防止属性被修改
   加了 @property 后,可以用调用属性的形式来调用方法,后面不需要加()。
      隐藏属性名,让用户进行使用的时候无法随意修改
 #没有加 @property  , 必须使用正常的调用方法的形式,即在后面加()	 

@classmethod

@classmethod
def format_date(cls, str_date): ##第一个参数cls 是表示调用当前的类名
   cls(year, month, day)# 返回一个初始化类对象
   
object 类提供的 __repr__() 方法总是返回一个对象(类名 + obejct at + 内存地址),这个值并不能真正实现自我描述的功能   

四元素取逆其实就是xyz的值分别取反

q = {x,y,z,w}
q.inverse() = {-x,-y,-z ,w}

旋转矩阵取逆后再转换成四元素与四元素直接取逆得到的值一致
q = [6,2,3,1]
qinv = np.multiply(q,np.array([-1,-1,-1,1]))
print(qinv)

标签:调用,python,classmethod,staticmethod,cls,property,方法,属性
From: https://www.cnblogs.com/ytwang/p/17435528.html

相关文章

  • python操作mysql数据pymysql-执行语句select查询返回值直接返回dict字典类型或者list
    一、返回tuple元组类型(默认)fetchall()将结果放在二维数组里面,每一行的结果在元组里面importpymysqldefexport(table_name):conn=pymysql.connect(host='118.24.3.40',user='jxz',password='123456',db......
  • python基础day12 函数的参数
    函数参数的两大分类1.形式参数在函数定义阶段括号内一次写入的变量名就叫形式参数,简称“形参”defindex(a,b,c,d)pass#a,b,c,d就称之为是函数的形参2.实际参数在函数调用阶段括号内一次传入的变量值就叫实际参数,简称“实参”index(1,2,3,4)#1,2,3,4就称之为......
  • python中re正则一些用法及其常用正则表达式
    re.findall(pattern,string[,flags])re.findall(pattern,string[,flags])是Pythonre模块中的函数,用于在字符串中查找所有与正则表达式模式匹配的非重叠子字符串,并将它们作为列表返回。具体参数解释如下:pattern:一个正则表达式模式,用于指定要匹配的模式。string:要在其......
  • python flask 启动报错 'utf-8' codec can't decode byte 0xb2 in position 4: invali
    原因:在python下lib文件夹里的socket.py文件中的name=gethostname()代码执行获取本机电脑名称时,遇到中文导致乱码报错。解决方法:    1.将电脑“设备名称”中中文改为英文;    2.修改socket.py代码,如下(参考https://blog.csdn.net/weixin_46342884/article/detail......
  • python基础12
    函数参数的两大分类1.形式参数在函数定义阶段括号内依次写入的变量名就叫形式参数,简称‘形参’2.实际参数在函数调用阶段括号里一次传入的变量值就叫实际参数,简称‘实参’3.形式参数和实际参数之间的关系把实际参数传递给形式参数,以形参=实参的形式传入——一变......
  • Python - matplotlib 不显示中文 && findfont: Font family ['simsun'] not found
    一.发现问题pythonmatplotlib.plt使用plt.title写标题时,标题显示为方框,无法正常显示中文,遂开始修复之旅。二.尝试解决查询网上大神给出的解决方案是添加全局字体配置:plt.rcParams['font.sans-serif']=['simsun']如果添加后运行代码无findfont:Fontfamily['simsu......
  • Python默认编码错误SyntaxError: Non-ASCII character '\xe5'之解决方法
    在编写Python时,当使用中文输出或注释时运行脚本,会提示错误信息:解决方法:python的默认编码文件是用的ASCII码,你将文件存成了UTF-8!!!(文件中存在中文或者其他语言,就会出现此问题!)解决办法很简单!!!在文件开头加入:# -*- coding: U......
  • Python:实现多态
    定义一个在校人的基类,分别派生出教师和学生,然后放入列表中,实现多态。#!/usr/bin/python#Filename:inherit.pyclassSchoolMember:'''Representsanyschoolmember.'''def__init__(self,name,age):self.name=nameself.age=age......
  • Python:简单的文件备份脚本
    文件备份脚本,实现了按照日期归类,时间建备份文件的功能,还能加入用户的备注信息。#!/usr/bin/python#Filename:backup_ver3.pyimportosimporttime#1.sourcefilewhichtobebackedup.source=['/home/shibo/Code']#2.targetpathwhicharebackedupto.target_dir......
  • Python:模拟linux命令cat
    模拟linux的cat命令,打印从命令行输入的文件名#!/usr/bin/python#Filename:cat.pyhelpString='''\Thisprogramprintsfilestothestandardoutput.Anynumberoffilescanbespecified.Optionsinclude:--version:Printstheversionnumber--help:Display......