我的軟件支持python來自動執行任務(Maya)。當我在這個軟件中撤消或重做時,它會輸出最後一條命令,不幸的是,這是該函數的內存地址,而不是實際有用的內容。因此,用戶看到的輸出Undo: <functools.partial object at 0x000002235DEDDF48>
,而不是像Undo: Set Key on something at frame x
Python:需要將functools.partial(函數)的結果稱爲別的
那裏看來是沒辦法做瑪雅人從它自己的功能內打印一個有用的結果真正有用的東西,所以現在我要問,如果有一些模糊的方式奶酪它用python讓該實例調用自己有用的軟件將打印的方式,同時希望不會干擾該功能。我會嘗試在這一點上!
def testFunc():
pass
test = partial(testFunc)
測試結果<functools.partial object at 0x000002235DEA95E8>
如果任何人能想到一個更準確的標題,請編輯/建議。
它特別打印什麼?最後一個表達式的值?一些特定的變量? –
你可以通過定義'__repr __()'來定義一個'partial'子類來打印更好的標識。雖然它會在哪裏得到這種認同? – kindall
@ kindall這是正確的答案,或讓我知道。如果我的子類partial,我可以'def __repr __(self):return result'並回答你的問題,它從'def __init __(self,* args):'之前調用__repr __()',並從'self.result = args [-1]'所以如果我調用'mypartial(function,arg1,arg2,arg3,extraarg4)',那麼extraarg4就會成爲該標識。 – Vii