首页 > 编程语言 >python的getattr()方法,理解

python的getattr()方法,理解

时间:2022-11-13 10:36:39浏览次数:42  
标签:... run name python getattr 理解 test 方法

from CNN_Datasets.R_A import datasets
            Dataset = getattr(datasets, args.data_name)

#这里的getattr()方法
#csdn解释
#getattr(object, name[,default])
#获取对象object的属性或者方法,如果存在打印出来,如果不存在,打印出默#认值,默认值可选。
#需要注意的是,如果是返回的对象的方法,返回的是方法的内存地址,如果需#要运行这个方法,可以在后面添加一对括号。

>>> class test():
...     name="xiaohua"
...     def run(self):
...             return "HelloWord"
...
>>> t=test()
>>> getattr(t, "name") #获取name属性,存在就打印出来。
'xiaohua'
>>> getattr(t, "run")  #获取run方法,存在就打印出方法的内存地址。
<bound method test.run of <__main__.test instance at 0x0269C878>>
>>> getattr(t, "run")()  #获取run方法,后面加括号可以将这个方法运行。
'HelloWord'
>>> getattr(t, "age")  #获取一个不存在的属性。
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: test instance has no attribute 'age'
>>> getattr(t, "age","18")  #若属性不存在,返回一个默认值。
'18'
>>>

 

标签:...,run,name,python,getattr,理解,test,方法
From: https://www.cnblogs.com/lingxingzi/p/16885493.html

相关文章

  • python winpcap
    fromwinpcapyimportWinPcapDevicesfromwinpcapyimportWinPcapUtilsimportdpktimporttimeimportdatetime#list_device=WinPcapDevices.list_devices()......
  • python-pillow图像处理
    一、图像处理pillow是pythonimaginglibrary的简称。常见的尺寸/格式/色彩/旋转等处理。引用是为fromPILimportImage。PIL库安装目录在/Library/Frameworks/Python.fr......
  • v-for key的简单理解
    <divv-for="(item,index)inlist:key="index">{{item.name}}</div>用index作为key 渲染的时候会将index当做key值,这样就会出现当插入一个数据的时候,比如插入到了......
  • HMM算法python实现
    基础介绍,后5项为基础5元素Q=['q0','q1','q2','q3']#状态集合States,共N种状态V=['v0','v1']#观测集合Observatio......
  • python监听串口双方收发消息内容
    使用说明使用VSPD建立一组虚拟串口查看MCU的端口号与波特率并修改python程序配置,运行即可看到双方收发的效果通过串口助手连接到虚拟串口并向其发送消息即Python显示......
  • 任务理解与分工
    任务理解与分工团队任务:1小组讨论对课程设计任务的理解2进行任务的功能划分和分工3任务的进度安排个人任务:1给出自己对分配任务的理解2给出会遇到的问题及......
  • python的垃圾回收机制
    python对内存回收引用几个概念计数器:当python程序运行时,会根据数据类型的不同找到相对应的结构体,根据结构体中的字段来进行创建相关的数据。然后将对象添加到refchain双向......
  • python学习笔记(一)
    一、前言要开始准备明年的数学建模比赛了,第一次弄这个比赛先从python学习开始吧,正好学了c语言,感觉大部分都差不多。 二、基础语法有三个非常基础的语法,据我所知c中并......
  • python的深浅拷贝
    在python中,对象的赋值就是简单的引用,a=[1,2,3],b=a,在上述情况下,a和b是一样的,他们指向同一片内存,b不过是a的别名,是引用,我们可以使用bisa去判断,返回Trueb......
  • Python_解决脚本执行过程中,文件被多次读取的问题
    今天在封装pandas过程中,发现封装脚本的执行耗时明显高于未封装的脚本复盘问题importtimeclassDemo:defmock_read_excel(self):print("读取文件")......