iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python中如何获取类属性的列表
  • 197
分享到

Python中如何获取类属性的列表

列表类属Python 2022-06-04 18:06:00 197人浏览 安东尼

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

摘要

前言 最近工作中遇到个需求是要得到一个类的静态属性,也就是说有个类 Type ,我要动态获取 Type.FTE 这个属性的值。 最简单的方案有两个: getattr(Type, 'FTE') Type.

前言

最近工作中遇到个需求是要得到一个类的静态属性,也就是说有个类 Type ,我要动态获取 Type.FTE 这个属性的值。

最简单的方案有两个:


getattr(Type, 'FTE')
Type.__dict__['FTE']

那么,如果要获取类属性的列表,该怎么做呢?

首先上场的是 dir ,它能返回当前范围的所有属性名称列表:


>>> dir()
['__builtins__', '__doc__', '__name__', '__package__']
>>> dir(list)
['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__delslice__', '__doc__', '__eq__', '__fORMat__', '__ge__', '__getattribute__', '__getitem__', '__getslice__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__setslice__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']

可以配合使用 inspect 包中的功能来过滤:


>>> [i for i in dir(list) if inspect.isbuiltin(getattr(list, i))]
['__new__', '__subclasshook__']

inspect 包中还包含:


>>> [i for i in dir(inspect) if inspect.isfunction(getattr(inspect, i))]
['_searcHBases', 'classify_class_attrs', 'cleandoc', 'findsource', 'formatargspec', 'formatargvalues', 'getabsfile', 'getargs', 'getargspec', 'getargvalues', 'getblock', 'getcallargs', 'getclasstree', 'getcomments', 'getdoc', 'getfile', 'getframeinfo', 'getinnerframes', 'getlineno', 'getmembers', 'getmodule', 'getmoduleinfo', 'getmodulename', 'getmro', 'getouterframes', 'getsource', 'getsourcefile', 'getsourcelines', 'indentsize', 'isabstract', 'isbuiltin', 'isclass', 'iscode', 'isdatadescriptor', 'isframe', 'isfunction', 'isgenerator', 'isgeneratorfunction', 'isgetsetdescriptor', 'ismemberdescriptor', 'ismethod', 'ismethoddescriptor', 'ismodule', 'isroutine', 'istraceback', 'joinseq', 'namedtuple', 'stack', 'strseq', 'trace', 'walktree']

还可以配合 callable 来使用:


>>> [i for i in dir(inspect) if not callable(getattr(inspect, i))]
['CO_GENERATOR', 'CO_NESTED', 'CO_NEWLOCALS', 'CO_NOFREE', 'CO_OPTIMIZED', 'CO_VARARGS', 'CO_VARKEYWordS', 'TPFLAGS_IS_ABSTRACT', '__author__', '__builtins__', '__date__', '__doc__', '__file__', '__name__', '__package__', '_filesbymodname', 'dis', 'imp', 'linecache', 'modulesbyfile', 'os', 're', 'string', 'sys', 'tokenize', 'types']

上面提到了 __dict__ ,也可以用它来获取属性列表:


>>> list.__dict__.keys()
['__getslice__', '__getattribute__', 'pop', 'remove', '__rmul__', '__lt__', '__sizeof__', '__init__', 'count', 'index', '__delslice__', '__new__', '__contains__', 'append', '__doc__', '__len__', '__mul__', 'sort', '__ne__', '__getitem__', 'insert', '__setitem__', '__add__', '__gt__', '__eq__', 'reverse', 'extend', '__delitem__', '__reversed__', '__imul__', '__setslice__', '__iter__', '__iadd__', '__le__', '__repr__', '__hash__', '__ge__']

总结

以上就是在python中得到类属性列表的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

--结束END--

本文标题: Python中如何获取类属性的列表

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

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

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

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

下载Word文档
猜你喜欢
  • python中如何获取文件属性
    python中获取文件属性的方法:1、在win操作系统中找到python程序目录;2、打开idle工具;3、在idle中新建一个shell脚本;4、输入“import os”指令导入os模块;5、通过“os.stat(文件路径)”指令获取指...
    99+
    2024-04-02
  • python如何获取子列表
    小编给大家分享一下python如何获取子列表,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!获取子列表x = [1,2,3,4,5,6]#前3个...
    99+
    2023-06-17
  • 【Java 8 新特性】获取对象列表中的某个属性组成的列表
    文章目录 获取对象列表中的某个属性组成的列表1、用法示例2、详细案例 附录:Java 8 Stream 基本用法1、map2、filter3、forEach4、limit5、sort...
    99+
    2023-10-04
    java jvm servlet
  • Python如何获取模块中类以及类的属性方法信息
    目录一、sys.modules模块二、inspect模块三、python获取模块中所有类的实例总结一、sys.modules模块 sys.modules是一个全局字典,python启...
    99+
    2024-04-02
  • python如何获取文件列表
    要获取文件列表,可以使用Python的os模块中的listdir函数。以下是使用该函数获取当前目录下所有文件的示例代码:```pyt...
    99+
    2023-09-22
    python
  • python如何获取列表长度
    使用python获取列表长度的方法:1.新建python项目;2.定义list列表,并初始化;3.定义计数器;4.使用for循环获取列表长度;具体步骤如下:首先,打开python,并新建一个python项目;python项目创建好后,在项目...
    99+
    2024-04-02
  • jquery如何获取属性
    这篇文章主要讲解了“jquery如何获取属性”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“jquery如何获取属性”吧! jqu...
    99+
    2024-04-02
  • jQuery如何获取属性?
    这篇文章将为大家详细讲解有关jQuery如何获取属性?,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。jQuery 获取属性 前言: jQuery 是一个强大的 JavaScript 库,用于简化与 DOM...
    99+
    2024-04-02
  • 怎么获取C#类的属性
    要获取C#类的属性,可以使用反射来实现。反射是一种在运行时获取类的信息的机制。以下是一个示例代码,演示如何使用反射获取类的属性:``...
    99+
    2023-08-08
    C#
  • php如何获取类方法的参数列表
    这篇文章主要介绍“php如何获取类方法的参数列表”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“php如何获取类方法的参数列表”文章能帮助大家解决问题。php中,可用func_get_args()函数...
    99+
    2023-06-29
  • mysql怎么获取表中属性值
    mysql获取表属性值的方法查询数据表中所有字段的属性select * from information_schema.columnswhere table_schema= '数据库库名' and table_name ...
    99+
    2024-04-02
  • 我们如何获取现有 MySQL 表中的列列表?
    假设我们忘记了现有表中的列名,那么我们可以使用 SHOWCOLUMNS 语句来获取列的列表 -mysql> SHOW COLUMNS from Employee\G *************************** 1. ro...
    99+
    2023-10-22
  • python中如何获取和查看列表元素
    这篇文章将为大家详细讲解有关python中如何获取和查看列表元素,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1、获取方法(1)通过索引获取元素元素 = 列表[索引]>>&...
    99+
    2023-06-15
  • ajax中如何获取博文列表
    本篇内容介绍了“ajax中如何获取博文列表”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! &nb...
    99+
    2024-04-02
  • jquery如何获取checked属性
    使用jquery获取checked属性的方法:1.新建html项目,引入jquery;2.创建input输入框,设置type为checked属性;3.通过点击事件获取对象,使用prop方法获取checked属性;具体步骤如下:首先,新建一个...
    99+
    2024-04-02
  • mysql如何获取表的列名
    可以使用以下方法获取MySQL表的列名: DESC 命令:使用 DESC 命令可以获取表的结构信息,包括列名、数据类型、键类型等...
    99+
    2023-10-28
    mysql
  • CSS 中如何使用列表属性
    CSS 中如何使用列表属性,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。CSS 列表从某种意义上讲,不是描述性的文本的任何内容...
    99+
    2024-04-02
  • JavaScript如何根据属性获取属性的父级
    这篇文章主要介绍“JavaScript如何根据属性获取属性的父级”,在日常操作中,相信很多人在JavaScript如何根据属性获取属性的父级问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”JavaScript如...
    99+
    2023-06-27
  • python怎么获取列表中的数据
    要获取列表中的数据,可以使用索引。索引是一个整数值,表示列表中的元素位置,从0开始计数。例如,给定以下列表:```pythonmy_...
    99+
    2023-09-04
    python
  • 如何获取特定属性的PropertyInfo
    要获取特定属性的PropertyInfo,可以使用Type类的GetProperty方法。该方法接受一个字符串参数,表示要获取的属性...
    99+
    2023-09-27
    ropertyInfo
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作