gpt4 book ai didi

python - 字典不给变量赋值

转载 作者:太空宇宙 更新时间:2023-11-04 10:47:09 25 4
gpt4 key购买 nike

我正在尝试将字典中的值赋给变量,但变量保持不变。该值是另一个字典。

我用来生成字典的代码可以在这里找到:http://pastebin.com/Q2Hc8Ktp

我自己写的,测试过没有这个问题。

这是我尝试从字典中复制字典的代码片段。

_classes = {}

def populateClasses():
print "Classes Exist"
cp = Preferences(''.join([resource_path,"resources.ini"]))
print cp
_classes = cp.getPreferences()['Classes']

populateClasses()
print _classes

当我打印出 cp 时,它显示了正确的数据,但是当我尝试打印 _classes 时,它只显示了{}

注意:从函数内部打印 _classes 可以正常工作,但不能从函数外部打印。 _classes 在全局范围内定义

-编辑-

这里还有一些示例数据:

[Classes]
Wizard = Arcana, Bluff
Warrior = Endurance, Intimidate
Ranger = Nature, Perception
Bard = Heal, History

最佳答案

如果要改变全局变量_classes的值,需要使用global :

def populateClasses():
global _classes # <<<<<< THIS
print "Classes Exist"
cp = Preferences(''.join([resource_path,"resources.ini"]))
print cp
_classes = cp.getPreferences()['Classes']

如果没有这个,您的方法将创建一个单独的局部变量,也称为 _classes。一旦您的方法返回,此变量就会超出范围。

关于python - 字典不给变量赋值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16504748/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com