Как передать значения в функцию, которая является элементом списка в Python - PullRequest
0 голосов
/ 19 февраля 2020

Я хочу передать значение в качестве аргумента в функцию, которая является элементом списка.

Например:

def foo(arg1, arg2):
    print(“Something is happening here”, arg1, arg2 )


l = [1,2,3, foo('want values here as arguments')] 

def foo_bar():
    x = 0, y = 1
    print(“want to pass x and y inside: “ , l[3])

Спасибо, вперед.

Ответы [ 3 ]

2 голосов
/ 19 февраля 2020
 def foo(arg1, arg2):
    print("Something is happening here", arg1, arg2 )


l = [1,2,3, foo] 

def foo_bar():
    x = 0
    y = 1
    print("want to pass x and y inside: " , l[3](x,y))

1 голос
/ 19 февраля 2020

Вы пишете

l = [1,2,3,foo]

и позже

print l[3](x,y)
0 голосов
/ 20 февраля 2020

Чтобы сохранить результат из foo() в вашем списке, вам нужно изменить порядок шагов в вашем коде. Я рекомендую сохранить результат возврата из foo() в виде переменной:

def foo(arg1, arg2):
    print(“Something is happening here”, arg1, arg2 )



def foo_bar():
    x = 0
    y = 1
    z = foo(x, y)
    l = [1,2,3, z] 
    print(l)

В качестве альтернативы, вы можете создать список и затем добавить к нему значения:

def foo(arg1, arg2):
    print(“Something is happening here”, arg1, arg2 )


l = [1,2,3] 


def foo_bar():
    x = 0
    y = 1
    z = foo(x, y)
    l.append(z)
    print(l)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...