Python - 获取函数输入参数的名称

4

如何在函数中获取输入参数的名称?

以下是一个示例:

a=1
b=2
c=3
def test(x):
    print(?)

test(b)

并且结果应该是:

b

我认为这是一个简单的问题...?但对我来说不是 :)

1个回答

0
由于多个变量可能拥有相同的值,因此下面的函数将返回一个包含所有变量名的列表,这些变量持有传递给函数的参数值:
a = 1
b = 2
c = 3
def test(x):
    print([k for k, v in globals().items() if v == x])

test(b)

输出:

['b']

当然,你总是可以在第一次匹配后返回:

a = 1
b = 2
c = 3
def test(x):
    for k, v in globals().items():
        if v == x:
            return print(k)

test(b)

输出:

b

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接