Changing Variables in Class from Other Classes (Python) -


मेरे पास यह कोड है:

  class hello_world (): def define_hello (self) : self.hello = "हैलो" डीईएफ़ say_hello (स्वयं): प्रिंट self.hello वर्ग change_to_goodbye (): def __init __ (स्वयं): self.helloWorld = hello_world () डीईएफ़ hello_to_goodbye (स्वयं): self.helloWorld.hello = "अलविदा "वर्ग अन्य_ वर्ग (): def __init __ (स्वयं): स्वयं। हिलेलो वर्ल्ड = हेलो_वार्ल्ड () स्वयं। बदलाव करेंगूडबाई = परिवर्तन_टो_गुडबाइ () स्वयं। हिल्लोवॉल्ड। डेफिन_हेल्लो () स्वयं। बदलाव। गोवा। द्वारा। ()   

कक्षा हैलो_वर्ल्ड के दो तरीके हैं, जो कि वेरिएबल हैलो को परिभाषित करता है और जो इसे प्रिंट करता है दूसरी ओर, वर्ग change_to_goodbye को वेरिएबल हैलो वर्ग hello_world में प्रवेश करने की कोशिश करता है और इसे अलविदा में बदल देता है। क्लास other_class को वेरिएबल हैलो को "हैलो" पर सेट कर दें, इसे "अलविदा" में बदलकर स्क्रीन पर प्रिंट करें।

मुझे उम्मीद थी आउटपुट "अलविदा" होने पर मुझे "हैलो" मिला change_to_goodbye hello_world के

इसका कारण यह है कि आपका change_to_goodbye वर्ग अपनी स्वयं की हैलो_वर्ल्ड वस्तु को अंदर संग्रहीत करता है। hello_world ऑब्जेक्ट में changeToGoodbye हीलो_वर्ल्ड ऑब्जेक्ट HelloWorld जैसा नहीं है। इसलिए जब आप self.changeToGoodbye.hello_to_goodbye () करते हैं तो में, आपका हैलो वर्ल्ड वर्ल को बिल्कुल भी बदला नहीं जा रहा है।

ऐसा: self.changeToGoodbye.helloWorld.say_hello () अलविदा वापस आ जाएगा।

तो संक्षेप करने के लिए:

p> <> <कोड> वर्ग other_class () पूर्व: डीईएफ़ __init __ (स्वयं): self.helloWorld = hello_world () self.changeToGoodbye = change_to_goodbye () एक अलग hello_world वस्तु self.helloWorld.define_hello () self.changeToGoodbye #contains। hello_to_goodbye () changeToGoodbye self.helloWorld.say_hello () #the अनछुए HelloWorld वस्तु

आप के उत्पादन को बदलना चाहते हैं, तो HelloWorld के अंदर hello_world वस्तु #changes , आप change_to_goodbye वर्ग के निर्माता को बदल सकता है, ताकि उसके hello_world वस्तु एक आपने अभी बनाया है

  वर्ग change_to_goodbye ():। डीईएफ़ __init __ (स्वयं, hw): self.helloWorld = hw #other कोड    

Comments

Popular posts from this blog

php - PDO bindParam() fatal error -

logging - How can I log both the Request.InputStream and Response.OutputStream traffic in my ASP.NET MVC3 Application for specific Actions? -

java - Why my included JSP file won't get processed correctly? -