python的类里的属性是否可以为列表_是否有Python方法可以访问类的所有非私有和非内置属性?...
我想调用一种方法给我一个所有“非私有”的词典(我在这里使用“私有”一词,因为它在
Python中并不存在)和非内置属性(即那些在类上不要以单个或双下划线开头.像vars(MyClass)这样的东西只能返回该类的“公共”属性.
我知道
from M import *
不会导入名称以下划线开头的对象. (http://www.python.org/dev/peps/pep-0008/#id25)导入如何实现?通过内置函数或仅通过检查下划线?什么是pythonic方法呢?
例:
class MyClass(object):
def __init__(self):
do_stuff()
def _private(self):
print 'private'
def __gets_name_mangled(self:
print 'becomes _MyClass__gets_name_mangled()'
def public(self):
print 'public'
如果我做
vars(MyClass).keys()
我明白了
['_MyClass__gets_name_mangled','__module__','_private','__doc__','__dict__','__weakref__','public','__init__']
我怎么才能得到
['public']
或者我只是需要自己检查下划线?看起来似乎会有一种pythonic方式来做到这一点.
python的类里的属性是否可以为列表_是否有Python方法可以访问类的所有非私有和非内置属性?...相关推荐
- Python学习10 内置属性 对象属性 类属性 私有属性 私有方法 对象方法 类方法 静态方法
内置属性 创建类时系统自动创建的属性 # 内置属性:dir(对象),列出所有的内置属性 class Person(object):'''Person类1'''# Person类2__slots__ = ...
- python描述符魔术方法_学习笔记-Python基础9-面向对象编程OOP-类的成员描述符(property)、类的常用内置属性、类的常用魔术方法、类和对象的三种方法...
一.类的成员描述符(property) 类的成员描述符是为了在类中,对类的成员属性进行相关操作而创建的一种方式,大部分属于数据清洗 属性有三种操作:get获取属性值.set修改或添加属性.delete ...
- python内置属性与内置方法
一.类方法 类方法:把类看作成一个对象 #语法: #@classmethod----由@开头的叫做装饰器或者修饰器 #def 类方法名(cls,形参): 类方法可以直接使用----->类对象.类 ...
- Python- 反射 及部份内置属性方法
@property 类的静态属性,封装内部具体实现细节,调用的时候类似调用数据属性.既可以访问类属性,也可以访问实例属性 ![](https://s1.51cto.com/images/blog/20 ...
- Maven内置属性及使用
Maven共有6类属性: 内置属性(Maven预定义,用户可以直接使用) ${basedir}表示项目根目录,即包含pom.xml文件的目录; ${version}表示项目版本; ${project. ...
- es6 Symbol 的内置属性
Symbol 的内置属性 除了定义自己使用的 Symbol 值以外,ES6 还提供了 11 个内置的 Symbol 值,指向语言内部使用的方法. Symbol.hasInstance 对象的Symbo ...
- Maven系列(四):Maven内置属性,pom属性
Maven系列(四): 今天博主将为大家分享一下Maven系列(四):Maven内置属性,pom属性,不喜勿喷,如有异议欢迎讨论! 以下所写内容均与以前的文章有联系可以前往博文查看,陈永佳的博客 内置 ...
- UnityEditor扩展 - 编辑器中的内置属性Attribute
Unity内置属性[Attribute]是一种类似修饰功能的标签.可以对OnSceneGUI,InspectorGUI,MenuGUI,WindowGUI等实现各种各样的GUI扩展.在这一章里将举例介 ...
- Ant 脚本打印系统属性变量、ant内置属性
Ant 脚本打印系统属性变量.ant内置属性 作用 编写ant脚本的时候,经常会引用到系统属性,本脚本用于打印系统常用属性(System.getProperties)与环境变量(Environment ...
最新文章
- Android 属性动画(Property Animation) ObjectAnimator的介绍
- linux中使用net方式连接网络,如何使用 Netplan 从终端连接到无线网络?
- 面试python开发_python开发面试问题
- linux增量安装tomcat_linux与windows下tomcat的java内存设置
- 如何校验内存数据的一致性,DynamicExpresso 算是帮上大忙了
- mysql全局变量和局部变量的区别_详细讲解mysql全局变量与局部变量
- CSS3属性calc函数(CSS3)
- [转载]MyISAM InnoDB 区别
- 在字符串中标红_在C ++中标记字符串
- Atitit 遍历文件夹算法 autoit attilax总结
- Redhat 7.2 安装网卡驱动
- 逻辑学学习.14 --- 谓词逻辑(六):数量量词和摹状词
- 基于vue transform: translateY 上下滑动实现
- 职称最新消息:2022年开始湖北全面实行职称电子证书
- 【Flex】“安装的AdobeFlashPlayer不是调试器”解决办法之详解
- package.json 文件详解
- JavaWeb登陆成功后跳转到上一个页面
- 一名菜鸟程序猿对前端的简单理解及介绍
- CAD 开发实现不重启CAD软件修改代码调试
- 【转】旅游推荐系统的演进
热门文章
- GridView自动序号
- vue使用Echart跟随窗口大小改变而重新绘制时出现读取窗口大小不及时的问题
- PHP 文件与目录操作
- 网站微端服务器,微端服务器
- 北林oj-算法设计与分析-Simple Count(C++,思路+代码)
- VS2019-C++警告-C6385读取数据无效
- 表达式计算:后缀表达式求解 以及 中缀表达式转换为后缀表达式
- 菜鸟学了SpringBoot后,撸了个博客项目(大神跳过哈)
- java中的 ok_java okhttp包的类特点
- api 微信内置浏览器js_微信小程序和HTML的区别