У меня есть следующая функция, она объединяет несколько функций, но это «конечная функция»
boek = set()
vol_boek = set(np.arange(10))
def tellen():
aantal_keren = 0
while boek != vol_boek:
plakken()
aantal_keren += 1
print(f"Er waren {aantal_keren} pakjes nodig om het boek te vullen.")
Это прекрасно работает, «boek» и «vol_boek» объявляются вне «tellen ()» Это быстро и хорошо работает.
однако, когда я помещаю объявление "boek" и "vol_boek" внутри "tellen ()", как это, это действительно медленно и время ожидания ноутбука от jupyter истекает через некоторое время. Можете ли вы сказать мне, почему это? Вроде то же самое по сути. Есть ли способ выполнить функцию с set () внутри? Мне нужно запустить функцию с пустым набором, поэтому я использовал boek = set ().
Это мой код с объявлением внутри:
def tellen():
boek = set()
vol_boek = set(np.arange(10))
aantal_keren = 0
while boek != vol_boek:
plakken()
aantal_keren += 1
print(f"Er waren {aantal_keren} pakjes nodig om het boek te vullen.")
ps это остальная часть мой код:
def inhoud_pakje():
pakje = np.random.choice(range(10), 4, replace=False)
return pakje
def plakken():
pakje = inhoud_pakje()
for i in pakje:
boek.update(pakje)
return boek