Я думаю, що тут завдання - не закликати до глобальної ()
Я б особисто визначив список для ваших (динамічних) змінних, який повинен міститись, а потім додав би його до циклу for. Потім використовуйте окремий цикл, щоб переглянути кожен запис або навіть виконати інші операції.
Ось приклад - у мене є декілька мережевих комутаторів (скажімо, між 2 та 8) на різних брендах. Тепер мені потрібно переконатися, що я маю змогу визначити, скільки комутаторів доступно (або живим - тестуванням ping) у будь-якій галузі, а потім виконати деякі операції над ними.
Ось мій код:
import requests
import sys
def switch_name(branchNum):
# s is an empty list to start with
s = []
#this FOR loop is purely for creating and storing the dynamic variable names in s
for x in range(1,8,+1):
s.append("BR" + str(branchNum) + "SW0" + str(x))
#this FOR loop is used to read each of the switch in list s and perform operations on
for i in s:
print(i,"\n")
# other operations can be executed here too for each switch (i) - like SSH in using paramiko and changing switch interface VLAN etc.
def main():
# for example's sake - hard coding the site code
branchNum= "123"
switch_name(branchNum)
if __name__ == '__main__':
main()
Вихід:
BR123SW01
BR123SW02
BR123SW03
BR123SW04
BR123SW05
BR123SW06
BR123SW07