Сегодня я экспериментировал и/или возился с Python 3.5.Класс в классе, должен ли он быть установлен или намерен?
я случайно «случайно» написать это:
class Apple(object):
class green(object):
def eat():
print("You just ate a green apple...")
class red(object):
def eat():
print("You just ate a red apple...")
Значение я теперь могу сделать:
Apple.red.eat() # would print: "You just are a red apple..."
Apple.green.eat() # would print: "You just are a green apple..."
Который привел меня спросить это, как функции, такие как os.path.exists()
созданы или они создаются с использованием другого метода "?
Должно ли это быть исправлено или преднамеренно?
Благодарим вас заблаговременно.
Я не уверен, но я думаю, что 'import os' получает весь контент от' os.py' ... так ' path' должен быть 'class' внутри файла' os.py', а 'exists()' должен быть 'function' внутри класса' path'. –
'os.path' является ** подмодулем **,' os' является ** пакетом **. –
Если 'os.path' был классом, тогда вы могли бы создавать экземпляры' os.path', что не имеет никакого смысла, такая же проблема с вашим кодом. Выполнение 'x = Apple.red(); x.eat() 'вызывает ошибку, потому что' eat' не является допустимым методом (отсутствует аргумент 'self') –