返回顶部
首页 > 资讯 > 后端开发 > Python >全面了解Python的getattr(),setattr(),delattr(),hasattr()
  • 530
分享到

全面了解Python的getattr(),setattr(),delattr(),hasattr()

getattrPythonsetattr 2022-06-04 18:06:56 530人浏览 安东尼

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

摘要

1. getattr()函数是python自省的核心函数,具体使用大体如下: class A: def __init__(self): self.name = 'zhangjing' #self

1. getattr()函数是python自省的核心函数,具体使用大体如下:


class A: 
def __init__(self): 
self.name = 'zhangjing' 
#self.age='24'
def method(self): 
print"method print" 
 
Instance = A() 
print getattr(Instance , 'name, 'not find') #如果Instance 对象中有属性name则打印self.name的值,否则打印'not find'
print getattr(Instance , 'age', 'not find') #如果Instance 对象中有属性age则打印self.age的值,否则打印'not find'
print getattr(a, 'method', 'default') #如果有方法method,否则打印其地址,否则打印default 
print getattr(a, 'method', 'default')() #如果有方法method,运行函数并打印None否则打印default 

2. hasattr(object, name)

说明:判断对象object是否包含名为name的特性(hasattr是通过调用getattr(ojbect, name)是否抛出异常来实现的)

3. setattr(object, name, value)

这是相对应的getattr()。参数是一个对象,一个字符串和一个任意值。字符串可能会列出一个现有的属性或一个新的属性。这个函数将值赋给属性的。该对象允许它提供。例如,setattr(x,“foobar”,123)相当于x.foobar = 123。

4. delattr(object, name)

与setattr()相关的一组函数。参数是由一个对象(记住Python中一切皆是对象)和一个字符串组成的。string参数必须是对象属性名之一。该函数删除该obj的一个由string指定的属性。delattr(x, 'foobar')=del x.foobar

以上这篇浅谈Python的getattr(),setattr(),delattr(),hasattr()就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

本文标题: 全面了解Python的getattr(),setattr(),delattr(),hasattr()

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

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

猜你喜欢
  • 全面了解Python的getattr(),setattr(),delattr(),hasattr()
    1. getattr()函数是Python自省的核心函数,具体使用大体如下: class A: def __init__(self): self.name = 'zhangjing' #self...
    99+
    2022-06-04
    getattr Python setattr
  • 浅析Python中的getattr(),setattr(),delattr(),hasattr()
    getattr()函数是Python自省的核心函数,具体使用大体如下: 获取对象引用getattr Getattr用于返回一个对象属性,或者方法 class A: def __init__(self...
    99+
    2022-06-04
    getattr Python setattr
  • Python的hasattr()、getattr()、setattr()函数怎么用
    本文小编为大家详细介绍“Python的hasattr()、getattr()、setattr()函数怎么用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python的hasattr()、getattr()、setattr()函数怎么用”文...
    99+
    2023-06-30
  • 一文搞懂Python的hasattr()、getattr()、setattr() 函数用法
    目录hasattr()getattr()setattr()hasattr() hasattr() 函数用来判断某个类实例对象是否包含指定名称的属性或方法。该函数的语法格式如下: ha...
    99+
    2024-04-02
  • 全面了解python字符串和字典
    很多序列的方法字符串同样适用, 但是,字符串是不可变的,所以一些试图改变字符串的方法是不可用的 1 字符串格式化 1)用元组或者字典格式化字符串 format = "hello,%s.s% enough f...
    99+
    2022-06-04
    字符串 字典 python
  • 全面了解python中的类,对象,方法,属性
    python中一切皆为对象,所谓对象:我自己就是一个对象,我玩的电脑就是对象,坐着的椅子就是对象,家里养的小狗也是一个对象。。。。。。 我们通过描述属性(特征)和行为来描述一个对象的。比如家里的小狗,它的颜...
    99+
    2022-06-04
    属性 对象 方法
  • 全面了解Java中的CAS机制
    前言在看到Java锁机制的时候,无意中看到了CAS这个词,然后在百度查找CAS看了很多文章始终没有看的太懂,今天又在Google上查找了一些资料,才算是真正弄清楚了CAS机制。什么是CAS在jdk 1.5中增加的一个最主要的支持是Atomi...
    99+
    2023-05-31
    java cas 机制
  • 全面解读canvas:深入了解canvas方法的全貌
    全面解读canvas:深入了解canvas方法的全貌,需要具体代码示例 引言:Canvas是HTML5新增的一个标签,可以通过JavaScript脚本绘制图形、动画和其他视觉效果。它为开发者提供了一个强大的平台,可以创建各种各样...
    99+
    2024-01-17
    深入了解 全貌
  • 全面了解Python环境配置及项目建立
    一、安装Python Python比较稳定的两个版本是Python 3.5和Python 2.7,我用的是Python 2.7,下载地址是:https://www.python.org/downloads/...
    99+
    2022-06-04
    环境 项目 Python
  • 全面了解java中的异常处理
    目录Java 异常处理1. 什么是异常2. Java 异常类架构2.1 Throwable 类2.2 Error 类2.3 Exception 类3. 如何进行异常处理4. 抛出异常4.1 实例4.2 throw4.3 throws5. 捕...
    99+
    2020-09-26
    java 异常处理
  • Vue.js函数式组件的全面了解
    目录前言React 函数式组件Vue(2.x) 中的函数式组件🌰 举个栗子:优化 el-table 中的自定义列渲染上下文templateemit filter插槽p...
    99+
    2024-04-02
  • 从 Python Shell 到 Django:全面了解 Shell 在 Web 开发中的作用。
    从 Python Shell 到 Django:全面了解 Shell 在 Web 开发中的作用 Python Shell,即 Python 解释器交互式命令行界面,是 Python 编程语言的重要组成部分之一。Python Shell 在学...
    99+
    2023-07-26
    http django shell
  • 你准备好了吗?Python、Django和Linux面试题全解析!
    在现代技术领域中,Python、Django和Linux已经成为了不可或缺的技术。如果你正在寻找这些领域的工作机会,那么你需要准备好回答一些与这些技术相关的面试问题。在本篇文章中,我们将会全面解析这些问题,并演示一些相关的代码。 Pyt...
    99+
    2023-07-24
    django linux 面试
  • 全面理解Python中self的用法
    刚开始学习Python的类写法的时候觉得很是麻烦,为什么定义时需要而调用时又不需要,为什么不能内部简化从而减少我们敲击键盘的次数?你看完这篇文章后就会明白所有的疑问。 self代表类的实例,而非类。 实例来...
    99+
    2022-06-04
    Python
  • Python-嵌套列表list的全面解析
    一个3层嵌套列表m m=["a",["b","c",["inner"]]] 需要解析为基本的数据项a,b,c,inner 基本的取数据项方法: for i in m: print i这个只能取出第一层的a...
    99+
    2022-06-04
    嵌套 列表 Python
  • 全面了解阿里云MySQL数据库的操作
    阿里云MySQL数据库是阿里云推出的一种高性能、高可用的云数据库服务。本文将全面介绍阿里云MySQL数据库的操作,包括安装、创建数据库、插入数据、查询数据、更新数据、删除数据以及故障处理等。 一、安装阿里云MySQL数据库首先,你需要在阿里...
    99+
    2023-11-08
    阿里 操作 数据库
  • 深入了解PyCharm的注释功能:全面指南
    PyCharm是一款功能强大的Python集成开发环境(IDE),具有丰富的功能和工具,其中注释功能是其一个非常重要的功能之一。在编写代码的过程中,良好的注释可以帮助其他人更好地理解代...
    99+
    2024-02-23
    pycharm 入门 注释
  • 全面了解PHP中的字符串转Datetime操作
    PHP中字符串转换为Datetime类型是开发中常见的操作之一,能帮助我们将日期字符串转换为Datetime对象以便进行日期相关的操作。本文将介绍PHP中字符串转Datetime的具体...
    99+
    2024-04-02
  • Windows8系统自带防火墙的全面了解(图文)
      防火墙并不等同于防病毒应用或反恶意应用。 防火墙帮助抵御蠕虫病毒和黑客的攻击,防病毒应用则帮助防止病毒感染,反恶意应用则帮助防止恶意软件的入侵。 你需要同时具有这三种安全防护。 你可以使用 Window...
    99+
    2022-06-04
    防火墙 系统自带 图文
  • 分布式之全面了解Kafka的使用与特性
    目录引言1、面试官:可以简述下Kafka架构中比较重要的关键字吗?那我们为什么要选择 Kafka 呢? 2、面试官:那为什么Kafka的吞吐量远高于其他同类中间件?深入分析Kafka...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作