有没有一种方法可以定义一个变量,该变量是Python函数内部的一个参数?

时间:2019-06-16 18:19:07

标签: python function variables printing parameters

是否可以定义作为函数内部参数的变量? 我尝试这样做:

def myfunc(variable):
    variable = 5


myfunc(x)
print(x)

我期望在屏幕上看到数字“ 5”,因为我正在定义x(即5)然后进行打印。 但是我得到了这个NameError:

Traceback (most recent call last):
  File "C:\Users\yoelc\PycharmProjects\Test\app.py", line 4, in <module>
    myfunc(x)
NameError: name 'x' is not defined

我知道可以这样做:

def myfunc():
    return 5


x = myfunc()
print(x)

但这不是我想要做的。 有没有办法定义这个?

1 个答案:

答案 0 :(得分:5)

也许不是您想要的,但是非常相似:

def myfunc(variable):
    globals()[variable] = 5
myfunc('x')
print(x)

话虽如此,这是一个坏主意,除非您出于某种原因确实需要使用元编程