python - 如何从结构化字符串或列表 Python 中访问和提取数据
问题描述
我试图围绕结构化字符串或列表循环以提取数据,但我总是以类型错误或值错误结束。我尝试将其转换为 JSON,但结果相同。这是字符串:
我想将对应的数据提取到 untagged_vlan、tagged_vlan、port_name 和 port_number 的值。有没有办法将此字符串转换为切片,以便我可以循环它们并提取所需的数据?
提前致谢
[[{'untagged_vlan': '101', 'tagged_vlan': '1000', 'port_name': '"01-01-140"', 'port_no': '1'}, {'untagged_vlan': '101', 'tagged_vlan': '1000', 'port_name': '"02-01-142"', 'port_no': '2'}, {'untagged_vlan': '101', 'tagged_vlan': '1000', 'port_name': '"03-01-144"', 'port_no': '3'}, {'untagged_vlan': '101', 'tagged_vlan': '1000', 'port_name': '"04-01-146"', 'port_no': '4'}, {'untagged_vlan': '101', 'tagged_vlan': '1000', 'port_name': '"05-01-148"', 'port_no': '5'}, {'untagged_vlan': '101', 'tagged_vlan': '1000', 'port_name': '"06-01-150"', 'port_no': '6'}, {'untagged_vlan': '101', 'tagged_vlan': '1000', 'port_name': '"07-01-151"', 'port_no': '7'}, {'untagged_vlan': '101', 'tagged_vlan': '1000', 'port_name': '"08-01-152"', 'port_no': '8'}, {'untagged_vlan': '101', 'tagged_vlan': '1000', 'port_name': '"09-01-153"', 'port_no': '9'}, {'untagged_vlan': '101', 'tagged_vlan': '1000', 'port_name': '"10-01-155"', 'port_no': '10'}]]
解决方案
data = [[{'untagged_vlan': '101', 'tagged_vlan': '1000', 'port_name': '"01-01-140"', 'port_no': '1'}, {'untagged_vlan': '101', 'tagged_vlan': '1000', 'port_name': '"02-01-142"', 'port_no': '2'}, {'untagged_vlan': '101', 'tagged_vlan': '1000', 'port_name': '"03-01-144"', 'port_no': '3'}, {'untagged_vlan': '101', 'tagged_vlan': '1000', 'port_name': '"04-01-146"', 'port_no': '4'}, {'untagged_vlan': '101', 'tagged_vlan': '1000', 'port_name': '"05-01-148"', 'port_no': '5'}, {'untagged_vlan': '101', 'tagged_vlan': '1000', 'port_name': '"06-01-150"', 'port_no': '6'}, {'untagged_vlan': '101', 'tagged_vlan': '1000', 'port_name': '"07-01-151"', 'port_no': '7'}, {'untagged_vlan': '101', 'tagged_vlan': '1000', 'port_name': '"08-01-152"', 'port_no': '8'}, {'untagged_vlan': '101', 'tagged_vlan': '1000', 'port_name': '"09-01-153"', 'port_no': '9'}, {'untagged_vlan': '101', 'tagged_vlan': '1000', 'port_name': '"10-01-155"', 'port_no': '10'}]]
extracted = [item.values() for item in data[0]]
print(extracted)
推荐阅读
- git - git push 不带参数做什么
- ios - Fabric Crashlytics 欢迎窗口不会消失
- ruby-on-rails - 使用 Rails 应用程序安装 ssl 证书的 nginx 配置
- python - 如何在一个函数中设置两个消息处理程序
- python - 在训练时更改模型中 2 层的附加权重
- gitlab - Relation between Gitlab Chat and Mattermost
- reactjs - Unexpected output in react
- common-lisp - conditional returns (nil) as true
- java - @JsonIgnore 字段不使用来自 Postman 的数据
- python - 在 Python 中删除 2D 散点的外壳