Как использовать вывод для одной функции в качестве параметра для другой - PullRequest
0 голосов
/ 17 февраля 2019

Я пытаюсь работать с одним файлом, и у меня есть две функции a и b.

предположим, что a было:

def A(num1,num2):
    num3 = num1 + num2

def B(num3,num4):
    num5 = num3*num4

как бы я использовал вывод из A (num3) и использовать его в B?

Ответы [ 3 ]

0 голосов
/ 17 февраля 2019

то, что вы ищете, это «возврат», в основном он позволяет вашей функции выдавать вывод, который вы могли бы использовать позже.

например:

num1 = 1
num2 = 2

def a(num1, num2):
    return num1 + num2

def b(num3,num4):
    return num3*num4

num3 = a(num1, num2)
num5 = b(num3, num2)

в общем, это довольнобазовая и не очень хорошая практика кода, потому что я не знаю, что вы пытаетесь решить.дополнительная информация может помочь в написании лучшего кода для вашей проблемы :) я бы на самом деле не использовал этот код, кроме как для демонстрации возврата в этой ситуации, просто чтобы вы знали, хотя определение функции на самом деле ничего не делает, пока вы не вызоветепоэтому тот факт, что вы дали ему то же имя, никак не связывает действительные значения.

Я бы порекомендовал вам прочитать больше об основах Python.удачи!

0 голосов
/ 17 февраля 2019

1) ВЕРНУТЬ вывод функции A.

def A(num1,num2):
    num3 = num1+num2
    return num3

2) При вызове функции A сохраните результат в другой переменной.

result = A(12,14)

ПеременнаяРезультат теперь будет содержать значение (num1 + num2).Мы передадим это в качестве аргумента функции B.

3) При вызове функции B вместо num3 передайте значение, сохраненное в 'result'.Второй аргумент может быть любым числом.

B(result,11)
0 голосов
/ 17 февраля 2019

Во-первых, вам нужны ваши функции для возврата значений.В настоящее время A() просто вычисляет значение num1 + num2 и ничего с ним не делает.Если вы хотите, чтобы он возвращал ответ, вы должны добавить в конце оператор возврата:

def A(num1,num2):
    num3 = num1 + num2
    return num3

Далее, если вы хотите передать результат этой функции в функцию B,вы бы сделали это:

...
some_var = B(A(num1, num2), num4)
...

Видите, он работает так же, как и вызов функции где-либо еще, за исключением того, что она находится в скобках и там же, где вы могли бы поместить переменную.

...