访问python数据strucu

2024-04-27 04:23:00 发布

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

我在python中有一个数据变量,我不知道如何访问元素。
以下是数据结构示例:

('deploy_with_config', [{'port': 80, 'name': 'test1', 'address': '0.0.0.0'}, {'port': 80, 'name': 'test2', 'address': '0.0.0.0'}])

此数据必须在文本文件中,每行输入。
例如:
测试1 0.0.0.0 80
测试2 0.0.0.0 80


Tags: 数据nameconfig元素示例数据结构portaddress
3条回答

所以你有一个元组(一个不可变的列表),你可以索引到其中。您需要元组中的第二项,因此调用[1]。这是一个字典列表,每个字典都被大括号{}分割。要调用字典中的项目,请使用方括号并调用字典键(位于“:”左侧的单词)。这将为您提供相应的值,“test1”等

如果您不清楚代码的具体工作方式,请遍历每个阶段,首先遍历元组中的项,然后遍历字典,并使用调用语法

a = ('deploy_with_config', [{'port': 80, 'name': 'test1', 'address': '0.0.0.0'}, {'port': 80, 'name': 'test2', 'address': '0.0.0.0'}])

for some_dict in a[1]:
    print(some_dict["name"], some_dict["address"], some_dict["port"])

假设数据是元组

data = ('deploy_with_config', [{'port': 80, 'name': 'test1', 'address': '0.0.0.0'}, {'port': 80, 'name': 'test2', 'address': '0.0.0.0'}])

params = data[1]
params = [" ".join([item['name'], item['address'], str(item['port'])]) for item in params]

with open('data.txt') as fw:
    fw.writelines(params)

您的数据结构是一个元组,由一个字符串和一个列表组成。列表本身包含字典,每个字典有3个键值对

你可以找到这样的信息:

>>> unknown_data = ('deploy_with_config', [{'port': 80, 'name': 'test1', 'address': '0.0.0.0'}, {'port': 80, 'name': 'test2', 'address': '0.0.0.0'}])

>>> type(unknown_data)
<class 'tuple'>
>>> type(unknown_data[0])
<class 'str'>
>>> type(unknown_data[1])
<class 'list'>
>>> type(unknown_data[1][0])
<class 'dict'>

要获得建议的输出格式,可以执行以下操作:

for item in unknown_data[1]:
    print('{0[name]} {0[address]} {0[port]}'.format(item))

相关问题 更多 >