Недопонимание ООП. Область видимости
Такой вопрос, как в теле функции(метода), класса можно не обращаться к атрибутам класса вот так:
class Rso:
_username = input()
def func():
print(Rso._username)
А вот так:
class Rso:
_username = input()
def func():
print(_username)
По факту мы же в теле класса, и к атрибутам мы можем обращаться как в теле класса)
Ответы (1 шт):
Автор решения: S. Nick
→ Ссылка
я бы вам предложил попробовать два варианта. Мне лично второй вариант нравится больше.
так:
class Rso(object):
_username = input('Введите ваше имя: ')
def func(self):
print(self._username)
rso = Rso()
rso.func()
или так:
class Rso(object):
def __init__(self, _username):
super().__init__()
self._username = _username
def func(self):
print(self._username)
username = input('Введите ваше имя: ')
rso = Rso(username)
rso.func()