如何在不更改全局变量的情况下更改分配给全局变量值的局部变量?

埃斯米·克莱默

所以这基本上就是我正在使用的代码的工作方式。

global Gvar
Gvar = ["Hello"]

def someFunction():
    Lvar = Gvar
    Lvar.append("World")
    print(Lvar)
    print(Gvar)

someFunction()

这会输出两次“Hello World”。当我改变本地时,如何防止全局变量的改变?

在此先感谢,我希望有人可以帮助我。

m_____z

这里的问题是以下行:

Lvar = Gvar

由于Gvar是一个列表,因此是一个复杂的数据类型,Python 不会复制值,而是对变量的引用。因此,您是否修改LvarGvar不会在这一点上有所作为。相反,您可能希望复制可以通过不同方式实现的值,例如:

Lvar = Gvar[:]

或者,您可以使用复制模块查看Python 常见问题解答以获取更多信息。


为了完成,这是您修改后的代码的样子:

global Gvar
Gvar = ["Hello"]

def someFunction():
    Lvar = Gvar[:]
    Lvar.append("World")
    print(Lvar)
    print(Gvar)

someFunction()

作为旁注,Python 中的变量名应该是小写的——大写通常只用于类定义。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

更改全局变量值jQuery

来自分类Dev

如何使用局部变量更改全局变量

来自分类Dev

如何在C中将全局变量更改为局部变量?

来自分类Dev

如何在Sass中分配给全局变量?

来自分类Dev

Python - 将局部变量更改为全局变量

来自分类Dev

在函数内部更改全局变量值

来自分类Dev

AngularJS更改注入全局变量值

来自分类Dev

在函数内部更改全局变量值

来自分类Dev

防止在不更改子模块本身的情况下更改被调用子模块的全局变量?

来自分类Dev

在C#中使局部变量值成为全局变量

来自分类Dev

更改全局变量

来自分类Dev

如何在节点js中分配全局变量和局部变量

来自分类Dev

如何更改与 Rebol 或 Red 中的局部变量同名的全局变量?

来自分类Dev

从全局变量节点js分配局部变量

来自分类Dev

Python局部变量与全局变量

来自分类Dev

是局部变量还是全局变量?

来自分类Dev

局部变量和全局变量

来自分类Dev

Kotlin - 局部变量与全局变量

来自分类Dev

如果全局变量值更改,如何强制渲染?

来自分类Dev

除了声明它的函数之外,如何更改python中的全局变量值?

来自分类Dev

如何在主程序流程中不调用全局变量的情况下填充全局变量?

来自分类Dev

为什么在有局部变量的情况下调用全局变量?

来自分类Dev

GAS:在处理程序函数中使用变量时,如何更改全局变量值并保留其更改后的值?

来自分类Dev

如何在不传递参数或放置全局变量的情况下从其他范围访问变量?

来自分类Dev

JS for循环中的局部变量到全局变量,循环结束后更改值

来自分类Dev

Java:为什么更改局部变量会影响全局变量原始副本?

来自分类Dev

更改常量全局变量

来自分类Dev

如何获取AJAX的全局变量值

来自分类Dev

将全局变量的值分配给对象

Related 相关文章

  1. 1

    更改全局变量值jQuery

  2. 2

    如何使用局部变量更改全局变量

  3. 3

    如何在C中将全局变量更改为局部变量?

  4. 4

    如何在Sass中分配给全局变量?

  5. 5

    Python - 将局部变量更改为全局变量

  6. 6

    在函数内部更改全局变量值

  7. 7

    AngularJS更改注入全局变量值

  8. 8

    在函数内部更改全局变量值

  9. 9

    防止在不更改子模块本身的情况下更改被调用子模块的全局变量?

  10. 10

    在C#中使局部变量值成为全局变量

  11. 11

    更改全局变量

  12. 12

    如何在节点js中分配全局变量和局部变量

  13. 13

    如何更改与 Rebol 或 Red 中的局部变量同名的全局变量?

  14. 14

    从全局变量节点js分配局部变量

  15. 15

    Python局部变量与全局变量

  16. 16

    是局部变量还是全局变量?

  17. 17

    局部变量和全局变量

  18. 18

    Kotlin - 局部变量与全局变量

  19. 19

    如果全局变量值更改,如何强制渲染?

  20. 20

    除了声明它的函数之外,如何更改python中的全局变量值?

  21. 21

    如何在主程序流程中不调用全局变量的情况下填充全局变量?

  22. 22

    为什么在有局部变量的情况下调用全局变量?

  23. 23

    GAS:在处理程序函数中使用变量时,如何更改全局变量值并保留其更改后的值?

  24. 24

    如何在不传递参数或放置全局变量的情况下从其他范围访问变量?

  25. 25

    JS for循环中的局部变量到全局变量,循环结束后更改值

  26. 26

    Java:为什么更改局部变量会影响全局变量原始副本?

  27. 27

    更改常量全局变量

  28. 28

    如何获取AJAX的全局变量值

  29. 29

    将全局变量的值分配给对象

热门标签

归档