Я пытаюсь указать список в цикле for
, используя ключи из словаря, добавленные в строку.Позвольте мне объяснить:
site1_switches = {
'visw0102' : {
'device_type': 'hp_comware',
'ip': '192.168.0.241',
'username': 'admin',
'password': 'password'
},
'visw0103' : {
'device_type': 'hp_comware',
'ip': '192.168.0.242',
'username': 'admin',
'password': 'password'
},
'visw0105' : {
'device_type': 'hp_comware',
'ip': '192.168.0.244',
'username': 'admin',
'password': 'password'
}
}
uplinks_visw0102 = ['GigabitEthernet1/0/1','GigabitEthernet1/0/2']
uplinks_visw0103 = ['GigabitEthernet1/0/48']
uplinks_visw0105 = ['GigabitEthernet1/0/1','GigabitEthernet1/0/48']
for key, values in site1_switches.items():
for port in ('uplinks_' + key):
print(port)
Теперь это не весь сценарий, но это часть, в которой я застрял с элементами, необходимыми для его работы, как есть.
Я ожидал port
содержать uplinks_visw010X
в зависимости от того, где он находится в цикле.Вместо этого вот что я получаю:
>>> for key, values in site1_switches.items():
... for port in ('uplinks_' + key):
... print(port)
...
u
p
l
i
n
k
s
_
v
i
s
w
0
1
0
2
u
p
l
i
n
k
s
_
v
i
s
w
0
1
0
3
u
p
l
i
n
k
s
_
v
i
s
w
0
1
0
5
>>>
Кажется, что символ evey в port
обрабатывается циклом, но это не то, что я хочу, чтобы он делал.
Как следуетkeys
обработать для них, чтобы, в сочетании со строкой, выйти так, как я ожидаю (uplinks_visw010X
).
Спасибо за помощь