如何将值从locals()分配给具有相同名称的局部变量?

丹麦文

这有效:

def foo():
    locals().update({'bar': 12})
    print(locals()['bar'])  # 12

这将失败:

def foo():
    locals().update({'bar': 12})
    bar = locals()['bar']  # KeyError: 'bar'
    print(bar)
用户名

https://docs.python.org/3/library/functions.html#locals

注意此字典的内容不应修改;更改可能不会影响解释器使用的局部变量和自由变量的值。

编辑:但是如上所述,bar = 12当然可以:

>>> def foo():
...     bar = 12
...     bar_ = locals()["bar"]
...     print(bar_)
...     
... 
>>> foo()
12

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

将实例字段分配给局部变量

可以将具有推断类型的局部变量重新分配给其他类型吗?

想法:“将语句分配给新的局部变量”?

将文字值分配给LLVM IR中的局部变量

如何从部分内部而不是使用具有相同名称的局部变量访问:locals哈希?

如何将CTE值分配给变量

在引发事件之前,是否有任何理由将事件分配给局部变量?

具有相同名称的局部变量和全局变量及其工作方式?

使用if语句将值分配给局部变量

如何将变量分配给具有部分已知名称的Excel工作表

将窗口变量分配给局部变量

Bash:使用具有相同名称的局部变量隐藏全局变量

如何动态创建数组元素并将值(来自具有相同名称的变量)分配给元素

使用jQuery将单个值分配给具有相同类名称的文本字段

如何将变量分配给具有特定索引的拆分字符串?

如何在C中访问具有相同名称的局部变量和全局变量

使用多个具有相同名称的局部变量时的垃圾回收

将引用参数分配给局部变量

如何通过将变量分配给这些数字来调用具有相同名称但以不同数字结尾的变量

java框架源代码具有将实例变量分配给局部变量的模式

C#中存在具有相同名称的局部变量时,如何在函数中更改全局变量的值

是否可以将数字分配给具有相同名称的列表以进行区分?

将退出代码分配给Shell局部变量

在Ruby中具有相同名称的局部变量和方法?

将数组值分配给局部变量

将频繁使用的字段分配给局部变量是否更有效?

声明具有相同名称的局部变量时,函数变得不确定

将ivars分配给函数内的局部变量?

将从函数返回的对象属性分配给具有不同名称的变量