2017-01-31 3 views
0

forbidden fruitを発見した後、CPythonパッケージは、私がPythonの神聖な組込みクラスの信じられない冒険を見ているように私をせん断恐怖を見つめさせたが、そのようなことがJythonでもできるかどうか疑問に思っていた。私は成功を収めてこれを試してみましたJythonでビルトインクラスをサルパッチすることは可能ですか?

>>> from evil import desecrate 
>>> unleash_hell = lambda x: "Madness" 
>>> descrate(int, "__str__", unleash_hell) 
>>> print(int(10)) 
Madness 

答えて

1

:例えば

は、の線に沿って何かを

>>> def sayHello(self): 
... print 'hello' 
... 
>>> import java.lang.String as String 
>>> String.sayHello = sayHello 
>>> String().sayHello() 
hello 
残念ながら、これが唯一の基盤となるJava型に適用するようだ
+1

興味深い:-) int.hello = lambda: "hello" 'が生成されます' TypeError:組み込みの拡張タイプ 'int'の属性を設定できません –

関連する問題