Мой код:Как вызвать одну функцию из другого с помощью Python?
def inner_function(self):
x = "one"
y = "two"
def outer_function(self):
self.inner_function()
print "X is %" % x
print "Y is %" % y
outer_function()
Я хочу выход быть:
>>> X is one
>>> Y is two
Я думаю, что я не понимая правильного использования self
в методе Python/функции.
Ошибка, которую я возвращаю сейчас: TypeError: outer_function() takes exactly 1 argument (0 given)
Спасибо за любую помощь!
спасибо. Именно поэтому я понимаю, что метод - это когда функция связана с классом. Затем, чтобы написать метод, мне нужно будет ссылаться на класс класса метода, поэтому я бы поставил 'self.method()' и 'def method_name (self):' когда я создаю методы? – YPCrumble
Вы должны использовать 'self.method()' для вызова метода из другого метода внутри этого же класса. Вне класса вы должны создать объект и вызвать метод, например, 'var = MyClass()', за которым следует 'var.method()'. Точка каждого метода, имеющая аргумент 'self', заключается в том, что внутри самого класса вы не знаете, к какому объекту он может быть вызван, поэтому вам нужен способ ссылаться на то, что текущий объект есть, и это то, что 'является ссылкой. Автономные функции не связаны с объектами, поэтому 'self' будет неуместным. –