在 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()
的方法,所以如果可能的话,我建议完全避免使用这种方法。
我想创建一个变量,例如 '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()
的方法,所以如果可能的话,我建议完全避免使用这种方法。