问题标签 [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.

0 投票
2 回答
1162 浏览

python - python2和python3中dict的__repr__()

我在一个代码库(2.6、2.7 和 3.3+)中仅将 python 库从 python 2 移植到 python 2 和 3。剩下的主要问题是很多测试都使用这样的东西:

它适用于 python 2,但在 python3 中引发异常:

除了“测试不同”之外,还有处理这些问题的标准方法吗?超载__repr__

0 投票
1 回答
156 浏览

python - 在sage中调用函数时出错

伙计们在调用第一个函数时,因为SAES_ToStateMatrix([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15])它给了我

但是通过将输出作为SAES_FromStateMatrix([[a^3 + a a^3 + a],[a^3 + a a^3 + a]]) 错误出现" invalid syntax "所以如何避免这个错误

这是我的代码

0 投票
2 回答
349 浏览

python - 如何理解和解析默认 Python 对象表示

当您在 Python 中打印一个对象__repr__并且__str__不是由用户定义时,Python 会将对象转换为字符串表示形式,并用尖括号分隔...

问题是在 Web 浏览器中以字符串形式呈现它,这些字符串还包含必须正常呈现的 HTML。浏览器显然被尖括号弄糊涂了。

我正在努力寻找有关这些表示如何形成的任何信息,即使它们有名称。

对于所有没有__repr__定义方法的对象,是否可以通过重写__repr__类来改变 Python 将对象表示为字符串的方式object

那么,如果 Python 通常会 return "<Foo object at 0x112f6f350>",那么什么钩子可以让它返回"{Foo object at {0x112f6f350}}",或者其他什么,而不必直接修改Foo和其他所有类?

0 投票
1 回答
155 浏览

python - 从文件中读取时,如何从类初始化程序中删除引号。Python

我将对类 Task 的调用存储在 .dat 文件的数组中。我想阅读这个文件并重建类调用。

这是我现在正在使用的课程:

这是从文件中读取的内容:

这是对文件的写入:

这是文件的内容: ['Task("class",20)'] 其中“class”是任务的名称。

我知道问题与 'Task("class",20)' 周围的单引号有关,但我不知道如何摆脱它们。我收到的错误消息大致如下:“str object has no attribute 'name'”

如何删除这些引号,以便下次阅读文件时可以重建类?

0 投票
1 回答
384 浏览

python - Python repr & 将类实例作为参数传递

所以我有一门课,我设置了类似的东西

现在我继续执行以下代码

然后,在另一个类中,我使用了这个变量

有没有办法解决这个问题(阅读评论中的详细信息)?

回溯如下:

请注意,我在回溯中的一些代码是法语的,但它正是我把它放在那里的方式。

0 投票
1 回答
126 浏览

python - 为什么 getattr 与手动更新对象的行为不同

有人可以解释为什么我在运行下面的 Python 脚本时得到不同的输出吗?

我不明白为什么getattr(sys.modules['importme'], 'MyClass')__repr__()打印MyClass.

打印测试.py

导入文件

0 投票
2 回答
3552 浏览

python - 如何使用 __repr__ 从中创建新对象?

这是我真的不明白的东西。我正在尝试__repr__从其输出中创建一个新对象。

我有一个类 OrderedSet,它包含一个列表和组织它的方法。这个类的str方法是

现在我应该以__repr__某种方式使用它来实例化一个新对象。喜欢Orderedset second = repr(first)

我可以这样做吗?

0 投票
1 回答
503 浏览

python - Output difference between ipython and python

It was my understanding that python will print the repr of the output, but this is apparently not always the case. For example:

In ipython:

In python:

What transformation does ipython apply on the output?

0 投票
3 回答
1884 浏览

python - Python:打印自定义异常时超出最大递归深度

下面的代码抛出RuntimeError: maximum recursion depth exceeded while getting the str of an object. 我可以用两种不同的方式解决无限递归,但我不明白为什么每个修复都有效,因此不知道使用哪个,或者是否正确。

如果我删除super,代码运行但不打印任何内容。这没有任何意义,因为根据这篇文章,Python 中的 __str__ 和 __repr__ 之间的区别,省略__str__会调用__repr__,但这里似乎没有发生。

相反,如果我保持对super和 add的调用__str__ = __repr__,那么我会得到预期的输出并且没有递归。

有人可以解释为什么存在无限递归,为什么每次更改都会解决无限递归,以及为什么一个修复可能优于另一个修复?

0 投票
1 回答
1109 浏览

python - lua 相当于 python repr

Lua 中是否有与 Python 的 repr() 函数等效的函数?换句话说,使用 \x 打印不可打印字符的函数,其中 x 是 n 或 b 等,或者如果不是 Lua 字符串转义字符,则使用 \000 代码。我用谷歌搜索,找不到任何东西。很多关于将不可打印的内容放入字符串中的内容,没有关于生成带有不可打印字符的字符串的打印友好版本。