- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的软件支持 python 来自动执行任务 (Maya)。当我在这个软件中撤消或重做时,它会打印最后一个命令,不幸的是,对于 Python 来说,这是函数的内存地址,而不是实际有用的东西。因此用户看到输出 Undo: <functools.partial object at 0x000002235DEDDF48>
而不是像Undo: Set Key on something at frame x
这样实际有用的东西
似乎没有选项可以让 Maya 从它自己的功能中打印出有用的结果,所以现在我想问是否有一些晦涩的方法用 python 来让该实例以软件的方式调用自己一些有用的东西将打印,同时希望不会干扰功能。此时我会尝试一切!
def testFunc():
pass
test = partial(testFunc)
测试结果<functools.partial object at 0x000002235DEA95E8>
如果有人能想到更准确的标题,请编辑/建议。
最佳答案
感谢kindall在评论中给我的引导,我才能找到答案。子类化 partial
并定义 __repr__()
是关键。
通过获取 __init__()
上的 *args
并将其存储为 self.result
,我们可以在 __repr__( )
以返回指定给 *args
的最后一个参数,作为使用撤消/重做时 Maya 给出的结果。
class rpartial(partial):
def __init__(self, *args):
self.result = args[-1]
def __repr__(self):
return self.result
rpartial(function, arg1, arg2, undoredo)
最后一行为 undoredo
指定给 rpartial 的字符串是使用撤消/重做时 Maya 将打印的内容。
关于Python:需要 functools.partial(function) 的结果被称为其他东西,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35095845/
模块functools 引用reduce 定义在_functools 中。同时 _functools 指的是在 functools 中定义的 partial 我在尝试为猴子修补目的创建命名空间副本时遇
我有以下两个装饰器: 装饰器1: import functools def overrides(interface_class): print('interface_class:', inte
我有一个函数,我正在尝试制作它的部分版本,然后在 reduce 语句中应用该部分函数。 偏函数本身是有效的——因为我可以正常地用一组参数调用它,它会返回正确的答案。但是,如果在 reduce 下应用它
考虑以下代码: import functools import inspect class Foo: def foo_fn(self, hello, world): print
我正在尝试 pickle 一个 SortedListWithKey,我正在使用 functools 中的 cmp_to_key() 将比较函数转换为键函数。但是, cmp_to_key() 似乎使我的
考虑以下几点: from functools import partial def add(a, b, c): return 100 * a + 10 * b + c add_part = pa
我知道 collections.namedtuple 的存在和目的,但我注意到,至少在 IDLE (3.2.2) 中,这个工厂函数也在 functools: >>> import functools
我一直在使用 Python,我设置了以下代码情况: import timeit setting = """ import functools def f(a,b,c): pass g = fu
一.简单介绍: functools模块用于高阶函数:作用于或返回其他函数的函数。一般而言,任何可调用对象都可以作为本模块用途的函数来处理。 functools.parti
我在 Windows 上使用 Python 3.7 运行每个代码时都会发生此错误: Traceback (most recent call last): File "test.py", line
以下是我的代码片段。当我运行该程序时,出现以下错误。 @functools.total_ordering AttributeError: 'module' object has no attrib
回答一个问题时,我注意到我不知道如何在reduce中执行append后返回列表,例如 import functools futures = [1,2,3] records = functools.re
#!/usr/bin/python from functools import wraps def logged(func): @wraps(func) def with_loggin
是否可以在项目被逐出时为 functools.lru_cache 定义回调?在回调中,缓存的值也应该存在。 如果没有,也许有人知道支持逐出和回调的轻量级类字典缓存? 最佳答案 我将发布我使用的解决方案
我在使用 functools.partial 时遇到问题。 我的代码: selected_words = ['awesome', 'great', 'fantastic', 'amazing', 'l
我有以下代码: import functools import random import inspect def myfirst(a, b): return a + b def myseco
我想要一个可以使用 functools.lru_cache 的函数,但默认情况下不能。我正在寻找一种方法来使用可用于禁用 lru_cache 的函数参数。目前,我有两个版本的函数,一个有 lru_ca
我目前面临“functools.reduce(operator.iadd,...)”改变原始输入的问题。例如 我有一个简单的数据框 df = pd.DataFrame([[['A', 'B']], [
在 Python Cookbook 部分 9.5. Defining a Decorator with User Adjustable Attributes我一直难以理解以下代码中 functools
我发现 functools.partial 有很多很棒的用例。 但是,我发现需要定义我称之为 partial_right 的东西。它就像部分的,但从“右边”绑定(bind)非 kwargs。 我的问题
我是一名优秀的程序员,十分优秀!