Python 3 Исключение в потоке ptvsd.stopping (скорее всего, возникает при выключении интерпретатора - PullRequest
0 голосов
/ 04 декабря 2018

Я новичок в программировании.Я написал бинарный поиск рекурсивной функции.Когда я запускаю программу, используя отладку, я получаю правильный вывод, но когда отладка выключена, я получаю правильный ответ вместе с этой ошибкой:

Exception in thread ptvsd. stopping 

(скорее всего, возникает при выключении интерпретатора) для некоторых параметров (когда x = 8 я получаю эту ошибку, но когда x = 2, я не получаю ошибку).Я не могу понять, почему я получаю эту ошибку.

def binary_search_recursive(A, x, low=0, high=None):
    if high is None:
        high = len(A) - 1
    if x == A[low]: return low
    if x == A[high]: return high

    if low == high: return -1
    middle = low + (high - low) / 2
    if x == A[middle]:
        return middle;
    elif x < A[middle]:
        return binary_search_recursive(A, x, low, middle-1)
    elif x > A[middle]:
        return binary_search_recursive(A, x, middle+1, high)

print(binary_search_recursive((2,4,5,6,7,8,10),8))

Для отладки я просто ставлю точку останова в своем операторе печати с использованием кода VS перед запуском кода.

...