Хотелось бы услышать оценку и критику скрипта на python

Хотелось бы услышать критику моему скрипту на питоне. Писал простой бинарный поиск на python:

question = int(input())
num_first = 100
def start():
  global num_first , question
  if num_first == question:
    print("+")
  elif num_first > question:
    num_first = num_first + 1
    num_first = num_first // 2
    print(num_first)
    start()
  elif num_first < question:
    num_first = num_first + 1
    num_first = num_first * 2
    print(num_first)
    start()
start()

Ответы (2 шт):

Автор решения: КИТ KIT

Ну во-первых вы используете в вашей функции global, что не есть гуд. Лучше передайте эти переменные как аргументы. Во-вторых вместо рекурсии лучше используйте цикл. В третьих вместо value = value + используйте value +=, тоже самое с остальными арифметическими операциями.

→ Ссылка
Автор решения: Эникейщик

Хорошо:

  • находит введёное число (до определённой величины, потом случается переполнение стека),
  • "змейка" в названии переменных.

Плохо:

  • использование глобальных переменных,
  • алгоритм,
  • рекурсия.

Общие замечания:

  • много лишних пустых строк,
  • это не бинарный поиск.
→ Ссылка