os.walk не может заранее знать кол-во файлов, соответственно нельзя будет заранее масштабировать прогресс бар. Если нужен прогресс, тогда заранее полностью пройдитесь по всему дереву через os.walk, запомните в массив структуру и посчитайте кол-во файлов. А уже потом проходитесь по конечному массиву списка файлов и обновляйте прогресс. CODES_FILENAME = "codes.txt"
def claim_code(code):
with open(CODES_FILENAME) as f:
codes = f.read().splitlines()
# если код есть в списке, то удаляем из списка и выполняем что еще нужно в случае успеха
if code in codes:
codes.remove(code)
with open(CODES_FILENAME, "w") as of:
of.write('\n'.join(codes))
# здесь например запуск какой-то функции для проставления бета-тестера
return True
return False
# затем при получении ввода пользователя вызывать нашу процедуру
res = claim_code('298')
print(res)datetime.datetime.timestamp(дата) np.diff(x)/np.diff(t) if el in jobs[key] не всегда будет работать так, как предполагалось. Потому что el это элемент из job1, т.е. отдельное слово. А jobs хранит в том числе и полные фразы."weather": ["Погода","Какая погода","Какая температура", ...] уже нельзя так строить условие. По факту, если ввести "Какая погода", то получим job1 = ["Какая", "погода"] и условие будет сравниватьif "Какая" in ["Погода","Какая погода","Какая температура", ...], соответственно ничего не найдет, т.к. это будет сравнение не по подстроке, а по полному соответствию элементов. <table>
<tr>
{% for image in images %}
<td>{{image.чтонамнужно}}</td>
{% if not loop.last and not loop.index%3 %}
</tr><tr>
{% endif %}
{% endfor %}
</tr>
</table>
Если цель - найти ключ словаря по совпадению значения, то можно так: