line = source.readline()
try:
line_id, x, y = line.split()
line_id = int(line_id) # если надо. у тебя id число или строка?
x = int(x)
y = int(y)
... # тут проверяешь line_id, что-то делаешь с x и y
line = f'{line_id} {x} {y}\n' # новая строка с измененными значениями
except Exception as err:
# если что не так, строку не меняем, просто фиксируем ошибку в консоль
print('Bad line:', line)
print('Error:', err)
finally: # в итоге пишем строку в новый файл
destination.write(line)
logger.info(f'{result.text}: {result.status}')
logger.info('%s: %s', result.text, result.status)
result = await check_text(text)
if result:
logger.info(f'{result}') #показываем результат в консоле
else:
logger.info(f'{text}: {result}') #отправляем результат в бота
if await check_text(text):
result = await check_text(text)
logger.info(f'{result}') #показываем результат в консоле
else:
resultFree = await check_text(text)
logger.info(f'{text}: {resultFree}') #отправляем результат в бота
Я подозреваю, что это потому что ты делаешь вызов
u = main(n-d[i], k.remove(d[i]))
В d присвоится значение, возвращённое k.remove(d[i]). Ты думаешь, что remove() возвращает копию списка без указанного элемента? Ты ошибаешься, remove() изменяет список на месте (т.е. он останется изменённым после возврата из рекурсии) и возвращает None.
Перечитай мой совет насчёт сортировки. Так реально будет проще.