使用变量Python3调用字典名称

2024-07-01 07:51:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我想使用脚本输入的唯一配置。e、 x.如果type=veh1,请为veh1等使用配置集。我认为解决此问题的最佳方法是使用字典:

veh1 = {
"config_1":1,
"config_2":"a"
}
veh2 = {
"config_1":3,
"config_2":"b"
}

type = "veh1"

print(type["config_1"])

我希望这会打印1,但是我得到了一个错误,因为python试图分割字符串veh1,而不是调用名为veh1的字典

TypeError: string indices must be integers, not str

我试过str(type)但没有成功。我可以使用if来迭代字典名称来设置配置,但这会很混乱。有没有办法强制Python将变量名解释为一个文本Python字符串来调用字典或子例程


Tags: 方法字符串脚本configstring字典type错误
1条回答
网友
1楼 · 发布于 2024-07-01 07:51:28

您需要删除括号并在字典的元素之间添加逗号。所以它将是这样的:

veh1 = {
    "config_1":1,
    "config_2":"a"
}
veh2 = {
    "config_1":3,
    "config_2":"b"
}

type = veh1

print(type["config_1"])

正如jarmod所建议的,您可能需要一个这样的口述:

dicts= {"veh1": {"config_1":1, "config_2":"a"}, "veh2": {"config_1":3, "config_2":"b"}}
type = "veh1"
print(dicts[type]["config_1"])

相关问题 更多 >

    热门问题