Это короткий фрагмент из моего кода при решении проблемы this. Я хочу перетаскивать элементы в список в стек, но одно и то же имя элемента следует использовать в качестве имени списка при переходе на функцию run
. Мое намерение - это что-то близкое к глубине, первый поиск и базовый случай, чтобы остановить рекурсию, скоро будут включены в мой код. Есть ли способ для cast
элемент, который нужно принять за аргумент имени списка.Передача имени элемента списка в качестве типа списка для функции
#Below is dependency list
p1-['p2','p3']
p2=['p3','p4']
p3=['p4']
p4=[]
p5=[]
def run(pro=[])
if pro: #process has a dependency, push its items dependency into stack
for dependency in pro:
stack.push(dependency)
run(stack.peek) #I need to pass top item of stack as a list
Не используйте отдельные переменные, используйте словарь, который отображает имена в списки. Затем вы можете искать зависимость в словаре. – Barmar
Будьте осторожны с использованием изменяемых аргументов по умолчанию! http://stackoverflow.com/questions/1132941/least-astonishment-and-the-mutable-default-argument –
@Barmar Даже если я беру dict и нажимаю каждый элемент списка для ключа, то также как я могу сказать python взять элемент stack.peek в качестве ключа dict. Не зная о питоне, не могли бы вы рассказать о том, как это будет достигнуто. Спасибо – user1977867