簡體   English   中英

python-調用具有指定變量名稱的函數,該函數將值分配給該變量

[英]python - Call a function with a specified variable name assigning value to that variable

我希望能夠將變量名傳遞給一個函數,並讓該函數調用另一個函數,該函數調用為第一個函數分配了特定值的變量名稱。 例如:

# function with argument 'arg2'
def foo(arg1=None, arg2=None, arg3=None):
    print arg2

# function that calls foo with a value assigned to designated variable
def bar(var, value):
    foo(var=value)

這樣我打電話時

> foo(arg2, 10)

我得到了輸出

Output: 10

怎么做?

您不能這樣做,因為這沒有任何意義。 名稱arg2將始終引用該變量的值。

但是,您可以傳遞字符串 "arg2" ,並使用kwargs調用該函數:

def bar(var, value):
    foo(**{var: value})

盡管您最好直接執行此操作,並完全消除對bar的需求。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM