इस python doc page यह कहते हैं पर की:बदलते "प्रकार" अजगर वस्तुओं
अपनी पहचान की तरह, एक वस्तु के प्रकार भी अपरिवर्तनीय है।
और मैं इस स्क्रिप्ट की कोशिश,
#!python3
class Foo:
num = 1
pass
class Bar:
num = 2
pass
f1,f2= Foo(), Foo()
f2.__class__ = Bar
print(type(f1), type(f2), f1.num, f2.num)
परिणाम दिखाता है:
<class '__main__.Foo'> <class '__main__.Bar'> 1 2
मुझे लगता है मैं f2
की type
बदल दिया है।
क्या गलत है, मुझे क्या याद आ रही है?
पर उपलब्ध हैं पाइथन को "वयस्क" के रूप में माना जाता है कि आप जानते हैं कि आप क्या कर रहे हैं और क्यों। सवाल यह होगा: "आप ऑब्जेक्ट प्रकार क्यों बदलना चाहेंगे?" – pepr
जिज्ञासा से बाहर @pepr – adamsmith
यह एक उचित कारण है। इसे विच्छेदन करने से आप आंतरिक को बेहतर समझ सकेंगे। :) – pepr