Getting __init__ variable
class, function, object, python, variables
Solution
You cannot. `direction` is a local variable of the `__init__` function, and an such not available outside of that function.
The variable is not used at all even; it could be removed from the function and nothing would change.
The `__init__` method is intended to set attributes on the newly created instance, but your `second` class seems to want to find the attributes on the `first` class instead. You cannot do that either, as those attributes you want to access are only set in `__init__`. You can only find `position` on instances of `first`, not on the `first` class itself.
Perhaps you wanted to initialize the parent class first, and actually store `position` on `self`:
class first(object):
def __init__(self, room, speed):
self.position = room
self.speed = 20
self.direction = random.randint(0,359)
class second(first):
def __init__(self, room, speed)
super(second, self).__init__(room, speed)
self.way = self.direction
self.now = self.position
Now `self` has the `direction` and `position` attributes defined and your `second.__init__` function can access those there.
Problem
``` class first(object): def __init__(self, room, speed): self.position = room self.speed = 20 direction = random.randint(0,359) class second(first): def __init__(self) self.way = first.direction self.now = first.self.position ``` I am getting an error, how to get variable from `__init__` of another class?