繁体   English   中英

在函数中定义的变量 - Python

[英]Variables defined in a function - Python

我正在运行此代码: https : //dpaste.de/RiAP

如您所见,变量linespecificpayload仅在此函数中使用,但如果我检查 ID,它在每个函数调用中都是相同的。

我似乎无法弄清楚如何在每次调用时刷新其值。 id(linespecificpayload)的调用都返回相同的值。 欢迎大家提出意见。

代码也是我在一两个小时内写的。 所以可能不是最有效的。

原因是您将全局对象分配给linespecificpayload ,因此引用保持不变。

如果您想创建filespecificpayload dict 的副本,您可以:

  • 使用filespecificpayload.copy() 这将创建字典的副本,但复制之前存在的值将被共享,以便id(filespecificpayload[key]) == id(filespecificpayload.copy()[key])

  • 使用copy.deepcopy()

     >>> from copy import deepcopy >>> d = deepcopy(filespecificpayload) >>> id(d[key]) == id(filespecificpayload[key]) False

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM