美文网首页
python attribute到底是属性,还是方法和属性的统称

python attribute到底是属性,还是方法和属性的统称

作者: 桐人_ | 来源:发表于2022-11-23 16:02 被阅读0次

先说结论,我认为attribute是方法和属性的统称~~

  • setattr函数,从字面上理解似乎是设置attribute。attribute的翻译是属性,似乎这个函数就只能是设置属性呢?通过实践发现,实例方法也可以通过这个函数来改变。所以这里的attr不能理解为属性!换句话说这里的attribute不是我们平时所称的“属性和方法”中的“属性”!而是属性和方法的统称!类似的情况还出现hasattrgetattr等函数中。
def print_cat():
    print('I am cat!')

class Animal:
    def __init__(self):
        self.name = 'dog'
        self.sex = 'man'
    def print_name(self):
        print(f'I am {self.name}')

a = Animal()
a.print_name()
setattr(a, 'print_name', print_cat)
a.print_name()
# 输出结果
# I am dog
# I am cat!
  • emmm...,探讨这个意义到底是什么?意义就是希望自己能够清楚地认清attribute和属性的区别,时刻警惕很多文章中所提的“属性”到底是attribute还是属性?有些文章或者书本里面,会很容易搞混了属性、方法和attribute三者的关系,尤其是很多时候把attribute说成属性。导致很多时候看文章的时候都会深深的自我怀疑,这个函数真的只能修改属性吗?或者attribute应该分为"attribute变量"和"attribute函数"或许会更好一点。(相关的叫法在C++中貌似分别称为成员变量成员函数)但是把attribute分为属性和方法已经是约定俗称的事情了,不得不说,attribute和属性真的是很容易搞混!!orz

相关文章

  • Python 元编程(1)-动态属性和特性

    在 Python 中,数据的属性和处理数据的方法统称属性(attribute)。其实,方法只是可调用的属性。除了这...

  • attributes和property同步问题

    attribute property是什么? 什么是attribute?html标签的预定义和自定义属性我们统称为...

  • 类属性和实例属性的查找顺序

    类属性:定义在类内部的变量和方法,统称为属性。 查找顺序 - MRO 查找 Python 的属性搜索算法,在 Py...

  • pandas使用技巧【3】Series的属性与方法

    简介: 本文将介绍Series和DataFrame的各种属性与方法。 Series 属性 attribute in...

  • Python高级第四天

    对象属性管理 Python下一切皆对象,每个对象都有多个属性(attribute),Python对属性有一套统一的...

  • 类和模块的特殊属性和方法

    Python一切皆对象(object),每个对象都可能有多个属性(attribute)。Python的属性有一套统...

  • 常用类、实例内置属性

    Python下一切皆对象,每个对象一般都有多个属性(attribute)。同样每个Python类会带有内置属性(包...

  • 扒一扒DOM

    目录1.什么是DOM2.节点的概念3.节点的属性和方法4.Element对象的属性和方法5.Attribute对象...

  • Python高级知识点学习(三)

    mro算法 类属性和实例属性的查找顺序 何为类属性:定义在类内部的的一些变量或者方法,都统称为类属性 何为实例属性...

  • iOS属性关键字

    在定义属性的时候,需要在括号()内说明该属性的特性(attribute)。属性的特性决定了属性在原子性、存取方法以...

网友评论

      本文标题:python attribute到底是属性,还是方法和属性的统称

      本文链接:https://www.haomeiwen.com/subject/cfmzxdtx.html