Как переписать Python код с версии 2.7 на 3.10?

Я изучаю книгу грокаем алгоритмы, и там есть написана реализация бинарного поиска на Python. Но на Python 2.7! Укажите пожалуйста способы реализации, либо укажите как переписать правильно, пожалуйста (*≧︶≦))( ̄▽ ̄* )ゞ
ORIGINAL code
def binary_search(list,	item):
    low = 0///	
    high = len(list) -1
    
    while low <= high:		
        mid = (low + high)		
        guess = list[mid]
        if guess == item:
            return mid	
        if guess > item:	
            high = mid - 1	
        else:	
            low = mid + 1	
    return None		
    
my_list = [1, 3, 5, 7, 9]

COPY code
def binary_search(olist, item):
    low = 0
    high = len(olist) - 1

    while low <= high:
        mid = (low + high)
        guess = list[mid]
        if guess == item:
            return mid
        if guess > item:
            high = mid - 1
        else:
            low = mid + 1
    return None


my_list = [1, 3, 5, 7, 9]  # => 3
binary_search(my_list, 3)
  • Вопрос задан
  • 170 просмотров
Решения вопроса 1
@PavelMos
названия переменных проверить в новом скрипте.
в одном месте list, в другом olist.
И читайте выдачу ошибок, если непонятно - то см. в поисковике
list это встроенная функция list(), питон допускает назвать так переменную, но так делать не надо - нельзя будет пользоваться функцией. Хотя, если она только внутри функции, может и безопасно.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
hottabxp
@hottabxp Куратор тега Python
Сначала мы жили бедно, а потом нас обокрали..
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы