问题标签 [repr]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
python - 使用 python 和 __repr__ 打印嵌套对象
我很好奇我应该如何实现一个对象的repr方法,该对象包含实现repr的其他对象。
例如(pythonish):
我必须直接调用 repr() 方法吗?我似乎不能只是连接它并让它隐式地将其转换为字符串。
python - 为集合容器定义 __str__ 和 __repr__
我一直在做一个大的任务,我几乎完成了,除了我需要帮助编写一个 Set 容器的__str__
和__repr__
函数。
我从来没有这样做过,我不知道该怎么做。在互联网上搜索,我仍然卡住了。
我试过类似的东西:
我需要打印出这样的表示:
我的元素存储在一个数组类中,我围绕它编写了 set 容器。我使用类似for item in self
或的循环访问它if item in self
请帮忙?
php - Python 的 repr() 等价于 PHP
我正在创建一个简单的数组包装类,并希望它的__toString()
方法像 Python 列表一样格式化,例如:["foo", "bar", 6, 21.00002351]
. 将每个元素转换为字符串是不够的,因为字符串对象实际上是在列表表示中引用的。
PHP 中是否有repr()
等价物,如果没有,PHP 实现会是什么样子?
c++ - 如何使用 SWIG 为 C++ 类提供 Python __repr__()
我观察到,当一种类型
在 Python repl 中,一个得到
当一种类型
一个被踢到帮助模式。我很确定这是因为site._Helper定义了__repr__()
(对于第一个示例)和__call__()
(对于第二个示例)。
我喜欢这种行为(仅提示对象和可调用语法),并且我想对通过 SWIG 导出到 Python 的 C++ 类做同样的事情。这是我尝试做的一个简单示例
当我尝试在我的应用程序中使用这个类时,我似乎无法在帮助下获得我看到的行为(下面的输出来自嵌入了 Python 的 C++ 应用程序,其中每个输入行都是通过发送的PyEval_String()
):
最后的打印显示该方法__repr__()
存在,但我无法使用更简单的对象引用或使用repr(tam)
. 我还尝试定义__str()__
希望我误解了哪个会被调用,但仍然没有运气。
我尝试使用%extend
接口文件中的指令将一个__str__()
或一个__repr__()
定义插入到 SWIG 接口定义文件中,而不是直接在 C++ 中定义它们,但无济于事。
我错过了什么?
python - 将交互式 python 中的默认 repr 从 builtins.repr 更改为 reprlib.repr
在交互式 Python 提示符下,当我不将表达式的输出绑定foo
到名称时,Python 会将 的输出写入builtins.repr(foo)
终端。
在较新版本的 Python 中,存在一种替代repr
实现,它不会在屏幕上显示具有长字符串表示的对象,如下所示:
我可以以某种方式告诉 Python 在交互式提示中使用reprlib.repr
而不是builtin.repr
表示未分配的输出吗?我最好对适用于任何 Python shell 的答案感兴趣,或者对至少适用于 IPython 的答案感兴趣。
python - __repr__ 对于可以是字符串或无的属性?
给定这个简单的类:
我想知道是否有一种简单的方法可以__repr__
根据 a 的类型返回不同的格式:
显然,对于单个属性,我可以测试并具有不同的输出字符串,但我认为一定有人在我之前解决了这个问题。具体来说,我有几个属性可以是字符串或无,我认为为我编写复杂的逻辑没有__repr__
多大意义。
python - 有没有一种简单的方法可以让 utf8 编码字符串的子字符串,子字符串的 repr 长度小于 python 中的 N
例如我有一个字符串,我希望找到一个简单的方法来获取一个子字符串,它以utf-8编码,并且子字符串的repr的长度是<= N,当然我可以尝试N / 3个子字符串并增加N/3+1, N/3+2,...,但是有没有简单的方法呢?
谢谢!
python - 为什么python类的对象返回地址而不是返回数据?
这是我在 Python 中的第一个程序,我正在使用一些用于登录或注册用户的 API。
这就是我的班级的样子:
我用下面的代码测试了这个类:
我得到这样的输出:
但是当我把我的测试改成这样时:
它会做的事情,我会得到我的输出,但它会执行该功能两次。
我在想问题可能出在哪里,我记得在 JAVA 中,当您忘记覆盖 toString() 时,您可以获得类似的输出。现在,我已经阅读了有关 python 等价物的信息:repr和str但首先我不知道如何从方法(不是 self.apikey 等)返回数据,其次我不是 100% 确定这是正确的获取方式我的输出,而不是地址。
python - python 2.7.5 中的 str() 与 repr() 函数
python 2.7.5str()
和函数有什么区别?repr()
python.org上的解释:
该
str()
函数旨在返回相当人类可读的值的表示形式,同时repr()
旨在生成解释器可以读取的SyntaxError
表示形式(或者如果没有等效的语法将强制执行)
但这对我来说并不清楚。
一些例子:
所以我想知道以下
- 我应该什么时候使用
str()
,什么时候应该使用repr()
? - 在哪些情况下我可以使用它们中的任何一个?
- 什么
str()
能做什么repr()
不能? - 什么
repr()
能做什么str()
不能?
python - 在 Python 中,'' 意思是?
是什么<function at 'somewhere'>
意思?例子:
也许有一种方法可以使用0x7f95cf42f320
?