मैं अजगर के लिए नया हूं और सीखा है कि कक्षा विशेषताएँ सी ++ में स्थिर डेटा सदस्यों की तरह हैं। हालांकि, मैं निम्नलिखित कोड की कोशिश कर के बाद उलझन में मिल गया:पायथन: कक्षा विशेषताओं और उदाहरण विशेषताओं
>>> class Foo:
... a=1
...
>>> f1=Foo();
>>> f2=Foo()
>>> f1.a
1
>>> f1.a=5
>>> f1.a
5
>>> f2.a
1
नहीं चाहिए f2.a भी बराबर 5?
एक एक पूर्णांक के बजाय की एक सूची के रूप में परिभाषित किया जाता है, व्यवहार की उम्मीद है:
>>> class Foo:
... a=[]
...
>>> f1=Foo();
>>> f2=Foo()
>>> f1.a
[]
>>> f1.a.append(5)
>>> f1.a
[5]
>>> f2.a
[5]
मैं Python: Difference between class and instance attributes को देखा है, लेकिन यह मेरे सवाल का जवाब नहीं है।
कोई भी समझा सकता है कि अंतर क्यों? धन्यवाद
संभावित डुप्लिकेट [मैं उदाहरणों के बीच पाइथन क्लास डेटा साझा करने से कैसे बचूं?] (Http: // stackoverflow।कॉम/प्रश्न/1680528/कैसे-करें-मैं-से बचने वाले-पायथन-कक्षा-डेटा-साझा-उदाहरणों के बीच) –