iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >关于python类属性和实例属性的细节有哪些
  • 808
分享到

关于python类属性和实例属性的细节有哪些

2023-06-02 00:06:36 808人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

本篇内容主要讲解“关于python类属性和实例属性的细节有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“关于Python类属性和实例属性的细节有哪些”吧!关于python类属性和实例属性,简

本篇内容主要讲解“关于python类属性和实例属性的细节有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“关于Python类属性和实例属性的细节有哪些”吧!

关于python类属性和实例属性,简单来说,类属性就是在定义类的时候,和类方法同一级别定义的属性;实例属性是在__init__实例初始化时候定义属性。

单纯从实例的角度来看,类属性和实例属性都可以在实例中用self.属性名称的方法进行访问更新,相对于在实例方法中的局部属性,可以进行实例全局该属性修改,很多时候甚至都混用了。

其实类属性还可以直接用类名.类属性名称方法直接访问,即时没有实例化。这个就是不要的类不要import,也会占用内存空间,即便那个类没有实例化。同时这个类属性方法的内存空间是所有实例化对象共享的,理论上实例对象A更新了类属性,B中这个属性也会更新,某个方面就实现跨实例的全局变量,可以用作实例直接交互。

这里有一些细节点要注意的,就是如果类属性是int,string,float,tuple这样不可变类型,那边其实每个实例更改的时候,就会新建一个,并不会修改原来的,这些类型的类属性就是和实例属性一个样;而可变类型dict set list,还有实例对象;这些就真正全局更新,只有一个类的实例对象修改,所有该类的实例对象都会改变。

最后还有一点,很容易忽视的,就是如果使用python Multiprocessing多线程处理的时候,不要尝试用这些类属性进行通信,因为可能一个实例在读,另一个已经修改了。还是用queue,这个是线程安全的。

下面代码示例说明。

class Treenode:    intItem= 5    Stringitem = 'Test'    listItem = [1,2,3,4]    Dict = {1:2,2:4}    def __init__(self, x):        self.Intval = x        self.listval= ['A','B']A = TreeNode(1)B = TreeNode(2)print("TreeNode.intItem:%s, TreeNode.listItem:%s" %(TreeNode.intItem,TreeNode.listItem))print("A:%s, B:%s" %(A.intItem, B.intItem))print("A:%s, B:%s" %(A.StringItem, B.StringItem))print("A:%s, B:%s" %(A.listItem, B.listItem))print("A:%s, B:%s" %(A.Dict, B.Dict))print("A:%s, B:%s" %(A.listval, B.listval))A.intItem = 8A.StringItem = 'Test2'A.listItem.insert(-1,5)A.Dict[3] = 9A.listval.insert(-1,5)print("========only update A=========")print("TreeNode.intItem:%s, TreeNode.listItem:%s" %(TreeNode.intItem,TreeNode.listItem))print("A:%s, B:%s" %(A.intItem, B.intItem))print("A:%s, B:%s" %(A.StringItem, B.StringItem))print("A:%s, B:%s" %(A.listItem, B.listItem))print("A:%s, B:%s" %(A.Dict, B.Dict))print("A:%s, B:%s" %(A.listval, B.listval))

到此,相信大家对“关于python类属性和实例属性的细节有哪些”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: 关于python类属性和实例属性的细节有哪些

本文链接: https://www.lsjlt.com/news/228181.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 关于python类属性和实例属性的细节有哪些
    本篇内容主要讲解“关于python类属性和实例属性的细节有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“关于python类属性和实例属性的细节有哪些”吧!关于python类属性和实例属性,简...
    99+
    2023-06-02
  • python类属性和实例属性
        python中的类属性只是存储与类相关的数据,和该类的实例无关。类属性和java中的静态成员变量类似。访问python的类属性可使用类名+“.”+属性名的方式,如果类的实例没有同名变量也可以使用实例来访问。如果实例含有与类属性同名的...
    99+
    2023-01-31
    实例 属性 类属
  • 实例属性和类属性
    实例属性   由于Python是动态语言,根据类创建的实例可以任意绑定属性   实例绑定属性的方法     1) 通过实例变量     2) 通过self变量   class Student(object):     de...
    99+
    2023-01-31
    实例 属性 类属
  • python基础之类属性和实例属性
    属性:类属性和实例属性 类属性:就是类对象所有的属性 小结 '类属性 是可以 被 类对象和实例对象共同访问的 实例属性只能由实例对象访问 class Student: ...
    99+
    2024-04-02
  • python_类属性和实例属性
    class AAA():     aaa = 10           # 可AAA.aaa直接调用,当实例属性没重名时,也可以obj1.aaa调用                     # 有重名时 通过对象调用的是实例属性      ...
    99+
    2023-01-31
    实例 属性 类属
  • JavaScript属性节点有哪些类型
    本篇内容介绍了“JavaScript属性节点有哪些类型”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2024-04-02
  • es6静态属性和实例属性的区别有哪些
    这篇文章主要介绍“es6静态属性和实例属性的区别有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“es6静态属性和实例属性的区别有哪些”文章能帮助大家解决问题。 ...
    99+
    2024-04-02
  • vue的实例属性有哪些
    vue中的实例属性有:1.$data属性,vur实例观察的数据对象;2.$options属性,当前vue实例的初始化选项;3.$slot属性,当前组件树的根vue实例;4.listeners属性,包含了父作用域中的时间监听器;5.$attr...
    99+
    2024-04-02
  • python类的私有属性和公共属性说明
    目录python类私有属性和公共属性python私有属性的定义python类私有属性和公共属性 对于python而言,类的属性的可见度只有两种,public和private。 类的私...
    99+
    2024-04-02
  • Python_类与实例的属性关系
    从对象的相关知识我们知道,实例的内存中只有数据属性,准确的说应该是只有init构造函数中的数据,还不包括类中其他的数据属性。而类中既有init构造函数中的数据属性还有不在init构造函数中的数据,同时还包含类中的函数属性。为什么要这样设计呢...
    99+
    2023-01-31
    实例 属性 关系
  • CSS的分类属性有哪些
    这篇文章主要介绍“CSS的分类属性有哪些”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“CSS的分类属性有哪些”文章能帮助大家解决问题。 CSS 分类属性允许你控制...
    99+
    2024-04-02
  • CSS分类属性有哪些
    小编给大家分享一下CSS分类属性有哪些,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! CSS 分类属性准许你牵制如何闪现元素,...
    99+
    2024-04-02
  • css属性有哪些类型
    今天小编给大家分享一下css属性有哪些类型的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。css属性的分类:动画属性、转换属性...
    99+
    2023-07-05
  • css中overflow属性的属性值有哪些
    css 中 overflow 属性有以下属性值:visible:允许内容溢出元素边框hidden:隐藏溢出的内容scroll:显示滚动条,允许滚动查看溢出内容auto:内容溢出时显示滚动...
    99+
    2024-04-28
    css overflow
  • html5新增的属性和废除的属性都有哪些
    html5新增的属性和废除的属性都有哪些,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。HTML5中,在新增加和废除很多元素的同时,也增加和废除...
    99+
    2024-04-02
  • CSS的position属性有哪些类型
    这篇文章主要介绍“CSS的position属性有哪些类型”,在日常操作中,相信很多人在CSS的position属性有哪些类型问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”CS...
    99+
    2024-04-02
  • html中id属性和name属性有哪些区别
    小编给大家分享一下html中id属性和name属性有哪些区别,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧! html中的id属性 我们使用id属性可以标识唯一的HTML元素,可以在在U...
    99+
    2024-04-02
  • python中类对象和类属性有什么关系
    本篇文章为大家展示了python中类对象和类属性有什么关系,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。python的数据类型有哪些python的数据类型:1. 数字类型,包括int(整型)、lon...
    99+
    2023-06-14
  • [python]父类、子类、子类实例属性
      本文旨在说明 父类、子类、子类实例的属性继承关系:     >>> A = type('A', (), {'name':1}) >>> B = type('B',(A,), {'addr':'be...
    99+
    2023-01-30
    子类 实例 属性
  • 关于Vue中的计算属性和监听属性详解
    目录一、computed计算属性(1)计算属性的缓存(2)计算属性的setter二、watch监听属性一、computed计算属性 Vue.js模板内的表达式非常便利,但是设计它们的...
    99+
    2023-05-20
    Vue 计算属性 Vue 监听属性
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作