在 Python 中使用打印时将字符串连接到字典路径

Concatenate string to dictionary path when using print in Python

我想创建一个变量,例如 'path',并在从字典中获取数据时使用它来获得相同的结果。这种连接是否可以通过某种类型的转换实现?

print(dict['detect'][1]['ssh'][0]['Server']) #Result

path = "['ssh'][0]['Server']"
print(dict['detect'][1]{path}) #...should give same result

要回答您的直接问题,您可以使用 eval() 将字符串数据视为代码:

print(eval(f"dict['detect'][1]{path}") 

也就是说,使用 eval() 时要非常小心,因为 it introduces major security risks。我在这里看不到使用 ast.literal_eval() 的方法,所以如果可能的话,我建议完全避免使用这种方法。