Je suis nouveau à Python et j'essaie d'utiliser une variable d'une classe dans une autre classe, mais je ne comprends pas, je ne comprends pas comment le faire.
J'ai écrit le code ci-dessous. Inside de World Class, j'ai une boucle de temps à l'intérieur de la boucle, il est Deltatime. Je veux passer Deltatime au test de la classe où j'utilise Deltatime * 2. P>
Comment puis-je faire cela? P>
J'ai cherché autour de moi mais je n'ai pas compris l'explication. < / p> voici le monde de la classe p>
3 Réponses :
Vous devez créer l'objet de test dans le code: et insérer l'objet à la fonction Exécuter: p> class Name:
Je pense que vous parlez de Composition de classe .
import time as tm class Test(): def __init__(self): self.v = 10 def use_world_deltatime(self, delta_time): v += self.deltaTime * 2 print(v) class World(): def __init__(self): self.test = Test() def run (self): while True: # Main real-time simulation loop # BEGIN mandatory statements self.oldTime = self.time self.time = tm.time () # The only place where the realtime clock is repeatedly queried self.deltaTime = self.time - self.oldTime # END mandatory statements # ... other code, using objects that are in the world, like a racetrack and cars self.test.use_world_deltatime(self.deltaTime) print ('deltaTime ', self.deltaTime) self.screen.update () tm.sleep (0.02) # Needed to free up processor for other tasks like I/O world = World() world.run()
Vous passez le mais lorsque vous appelez Appelez ensuite auto code> à
Test code> lorsque vous faites
self.test = test (auto) code>. Mais vous n'avez pas ajouté cela comme un paramètre dans le test
.__ init __ code> méthode. Il devrait être:
test (auto) code>, vous n'avez pas renseigné
self.delatime code>. Vous devez l'utiliser à partir d'une méthode différente de la classe code> de test code> que vous appelez à partir du
pendant que code> boucle. P>
test.display_time () code> à partir de
world.run () code> p> p> p>