introspection相关内容

help() 输出中的斜线是什么意思?

在 Python 3.4 的 help 输出中,/ 在右括号之前是什么意思? >>>帮助(范围)关于内置模块中的类范围的帮助:类范围(对象)|范围(停止)->范围对象|范围(开始,停止[,步骤])->范围对象||逐步返回从开始到停止的虚拟数字序列.||此处定义的方法:||__contains__(self, key,/)|返回自己的键.||__eq__(自我,价值,/)|返回自我==价值.... ..
发布时间:2022-01-31 19:11:16 Python

在 Python 中自省构造函数 __init__ 的参数

什么是从 __init__ 中提取参数而不创建新实例的方法.代码示例: 类超:def __init__(self, name):self.name = 名称 我正在寻找类似 Super.__dict__.keys() 类型的解决方案.只是为了检索名称参数信息而不添加任何值.有这样的选择吗? 解决方案 Python 3.3+ 更新(如 beeb 在评论中) 您可以使用 在 Pyth ..
发布时间:2022-01-21 22:21:01 Python

检查python类属性

我需要一种检查类的方法,以便我可以安全地识别哪些属性是用户定义的类属性.问题是 dir()、inspect.getmembers() 和朋友之类的函数会返回所有类属性,包括预定义的属性,例如:__class__、__doc__、__dict__,__hash__.这当然是可以理解的,有人可能会争辩说我可以只列出一个要忽略的命名成员,但不幸的是,这些预定义的属性必然会随着 Python 的不同版本而 ..
发布时间:2022-01-13 17:47:16 Python

列出作为 python 包一部分的所有模块?

有没有一种简单的方法可以找到所有作为 python 包一部分的模块?我发现 这个旧讨论,其中并不是真的有定论,但在我推出自己的基于 os.listdir() 的解决方案之前,我希望有一个明确的答案. 解决方案 是的,你想要基于 pkgutil 或类似的东西——这样你就可以同等对待所有的包,不管它们是否在鸡蛋里或 zips 左右(os.listdir 无济于事). 导入 pkgutil# ..
发布时间:2022-01-13 16:29:07 Python

如何找到符合 KVC 标准的 Objective-C 对象的所有属性键?

是否有一种方法可以返回符合 NSKeyValueCoding 协议的对象的所有键? 与 [object getPropertyKeys] 类似的东西将返回 NSString 对象的 NSArray.它适用于任何 KVC 兼容的对象.有这样的方法吗?到目前为止,我在搜索 Apple 文档时没有发现任何内容. 谢谢,G. 解决方案 #import "objc/runtime.h"无 ..

打印 Lua 中当前作用域可访问的所有局部变量

我知道如何使用以下代码打印“所有"全局变量 for k,v inpairs(_G) 做打印(“全局键",k,“值",v)结尾 所以我的问题是如何为当前正在执行的函数可访问的所有变量执行此操作,这可以执行 locals() 为 Python 所做的事情. 解决方案 这里是一个 locals() 函数的实现.它将从调用范围返回一个本地表: function locals()局部变量 = ..
发布时间:2021-12-30 19:57:47 其他开发

列出属于 python 包的所有模块?

有没有一种直接的方法可以找到属于 python 包的所有模块?我找到了这个旧讨论,其中并不是真正的决定性的,但在我推出基于 os.listdir() 的我自己的解决方案之前,我很想有一个明确的答案. 解决方案 是的,你想要基于 pkgutil 或类似的东西——这样你就可以一视同仁地对待所有包,无论它们是否在鸡蛋中或 zips 左右(其中 os.listdir 无济于事). import ..
发布时间:2021-12-29 13:42:24 Python

C++ 使用 boost fusion adapt_struct 迭代到嵌套结构域

两个stackoverflow 答案 建议使用 fusion adapt_struct 迭代结构字段的方法.这种方法看起来不错.但是,如何迭代到一个本身就是结构体的字段? 按照前面的答案,我想出了下面的代码.问题在于代码无法编译的“#if 0"子句.作为替代解决方案,我创建了“decode()"函数来获取指向目标参数的空指针.这有效,但在编译时丢失了类型信息.有更好的解决方案吗? stru ..

将对象的属性和值转换为键值对数组

我对 JavaScript 还很陌生,不确定这是否可行,但基本上我想获取一个对象并将其转换为格式的字符串数组;array[0] = 'prop1=value1' 这背后的原因是我让用户将 k=v 对的列表输入到一个表单中,后来它被写成一个 json blob 中的对象.从键值 csl 到 json 对象很简单,现在我需要以另一种方式返回(我已经通过 ajax 调用接收到 JSON 并想要填充 ..
发布时间:2021-12-26 14:35:37 前端开发

Java内省和反射

谁能解释一下Java反射和内省的使用?什么时候需要同时使用? 解决方案 Reflection(取自 oracle java 教程) 反射通常用于需要能够检查或修改在 Java 虚拟机中运行的应用程序的运行时行为的程序.这是一个相对高级的特性,只应由对语言基础有很强掌握的开发人员使用.考虑到这一点,反射是一种强大的技术,可以让应用程序执行原本不可能执行的操作. 自省(取自 sun ..
发布时间:2021-12-26 14:33:27 Java开发

动态获取活动名称 - android

我想获取要在 HttpRequest 的 URI 中发送的当前 Activity 的名称.有没有办法在不特别提到 Activity 的情况下做到这一点? 我知道我可以做 myActivity.class.toString() 但这只是硬编码“myActivity"的一种效率较低的方式,因为我正在对我的 Activity 进行静态引用.有没有更通用的方法来使用类似“this"的东西(顺便说一句 ..
发布时间:2021-12-23 10:02:43 移动开发

如何内省 django 模型字段?

当我只知道字段的名称和模型的名称(都是纯字符串)时,我试图获取有关模型内字段的类信息.怎么可能? 我可以动态加载模型: from django.db 导入模型模型 = models.get_model('myapp','mymodel') 现在我有了字段 - 'myfield' - 我怎样才能得到那个字段的类? 如果字段是相关的 - 如何获取相关字段? 非常感谢! 解决 ..
发布时间:2021-12-19 11:32:04 Python

如何确定 Java 中通用字段的类型?

我一直在尝试确定类中字段的类型.我已经看到了所有的内省方法,但还没有完全弄清楚如何去做.这将用于从 Java 类生成 xml/json.我在这里查看了许多问题,但还没有找到我真正需要的. 示例: class Person {公共最终字符串名称;公开最终名单孩子们;} 当我编组这个对象时,我需要知道 chidren 字段是一个类型为 Person 的对象的列表,这样我才能正确地编组它 ..
发布时间:2021-12-15 09:53:57 Java开发

如何在没有 dunder setattr 或 pdb 的情况下观察 python 中的变量变化

有一个大型python项目,其中一个类的一个属性在某些地方有错误的值. 它应该是 sqlalchemy.orm.attributes.InstrumentedAttribute,但是当我运行测试时它是常量值,比如说字符串. 有没有办法在调试模式下运行python程序,并在每行代码后自动运行一些检查(如果变量改变了类型)? 附言我知道如何在检查和属性装饰器的帮助下记录类实例的属性更 ..
发布时间:2021-12-14 09:04:01 Python

是否有内置函数来打印对象的所有当前属性和值?

所以我在这里寻找的是类似于 PHP 的 print_r 函数. 这样我就可以通过查看相关对象的状态来调试我的脚本. 解决方案 你真的把两种不同的东西混在一起了. 使用dir(),vars() 或 inspect 模块以获取您感兴趣的内容(我使用 __builtins__ 作为示例;您可以使用任何对象代替). >>>l = dir(__builtins__)>>>d = __b ..
发布时间:2021-12-14 08:05:45 Python