Я работаю над упражнением на python, которое требует получения возвращаемых значений функции. Вот пример кода, который связан с тем, над которым я сейчас работаю.
def main():
x = 'the quick'
y = 'brown fox'
return x, y
def function1(x, y):
if x == 'the quick' and y == 'brown fox':
return 'jump'
else:
return 'lazy'
def function2():
if a == 'jump':
print('good boy')
else:
print('bad boy')
function2(*function1(*main()))
Я получаю ошибку позиционного аргумента. Как правильно вернуть строку для другой функции?
2 ответа
Сначала вы должны указать параметры для function2: я думаю, вы хотите определить function2 следующим образом:
def function2(a):
if a == 'jump':
print('good boy')
else:
print('bad boy')
И вы можете захотеть, чтобы funtion2 вывел «good boy», таким образом, вы можете попробовать:
function2(function1(*main()))
Который выдаст на выходе как хочешь.
Вы не указали, что Function2()
принимает какие-либо аргументы.
Я получил ваш код для запуска, указав четыре аргумента функции (используя только один):
def main():
x = 'the quick'
y = 'brown fox'
return x, y
def function1(x, y):
if x == 'the quick' and y == 'brown fox':
return 'jump'
else:
return 'lazy'
def function2(a, b, c, d):
if a == 'jump':
print('good boy')
else:
print('bad boy')
function2(*function1(*main()))
Это возвращает:
bad boy
Похожие вопросы
Новые вопросы
python
Python - это многопарадигмальный, динамически типизированный, многоцелевой язык программирования. Он разработан для быстрого изучения, понимания и использования, а также для обеспечения чистого и единообразного синтаксиса. Обратите внимание, что Python 2 официально не поддерживается с 01.01.2020. Тем не менее, для вопросов о Python, связанных с версией, добавьте тег [python-2.7] или [python-3.x]. При использовании варианта Python (например, Jython, PyPy) или библиотеки (например, Pandas и NumPy) включите его в теги.