我的数据以json格式存储。使用json:load()读取数据。
我试图做的是基于传递的参数,我试图从列表中提取Key:Value的特定部分,并将它们存储到一个新列表中以供以后处理。
代码selected_env='mydev2'
server_list=[{'mydev': ['192.168.56.102', '192.168.56.102', '192.168.56.102']}, {'mydev2': ['192.168.56.102', '192.168.56.102', '192.168.56.102']}]
for item in server_list :
host_list=[item for item in server_list[selected_env] if selected_env in server_list]
print(host_list)
我犯了个错误
TypeError: list indices must be integers or slices, not str
注意:我已经实现了一种提取方法,如下所示for item in server_list:
for element in item :
if element == selected_env :
host_list=item[selected_env]
尽管它在工作,我还是想对它进行优化,并阅读了一些关于列表提取和上面的错误的文章。
任何帮助,非常感谢。