Как напечатать «ключевое» значение списка пар ключ: значение? - PullRequest
0 голосов
/ 19 января 2020

У меня есть список пар ключ: значение. Как мне распечатать каждый из них отдельно?

NetworkCommands = [
    (target + '/network/vlan'              , {"vlan": 30, "tagged_ports": [1,2], "ip": "172.0.10.1/16"}),
    (target + '/network/vlan'              , {"vlan": 51, "tagged_ports": [1,2], "ip": "10.0.0.1/16"}),
    (target + '/network/apply'             , {}),
    (target + '/network/sr/routing/static' , {"vlan": 51, "dest_ip": "100.0.0.0/8", "gateway": "10.0.0.2"}),
    (target + '/network/apply'             , {}),
]

Это печатает оба:

for i in NetworkCommands:
    print(i)

('https://sonia:443/network/vlan', {'ip': '172.0.10.1/16', 'vlan': 30, 'tagged_ports': [1, 2]})
('https://sonia:443/network/vlan', {'ip': '10.0.0.1/16', 'vlan': 51, 'tagged_ports': [1, 2]})
('https://sonia:443/network/apply', {})
('https://sonia:443/network/sr/routing/static', {'vlan': 51, 'gateway': '10.0.0.2', 'dest_ip': '100.0.0.0/8'})
('https://sonia:443/network/apply', {})

1 Ответ

2 голосов
/ 19 января 2020

Вы можете использовать распаковку аргументов, чтобы назначить каждому из двух элементов в каждом кортеже их собственную переменную.

for first, second in NetworkCommands:
    print('The first element is', first)
    print('The second element is ', second)

В качестве альтернативы просто индексируйте кортеж, как требуется.

for i in NetworkCommands:
    print('The first element is', i[0])
    print('The second element is', i[1])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...