UnboundLocalError: локальная переменная 'curr_cnt', на которую ссылаются до назначения - PullRequest
0 голосов
/ 24 октября 2018

Вот код:

def mostFrequent(num1,n):
    for i in range(1,n):
        if (num1[i] == num1[i-1]):
            curr_cnt += 1
        else :
            if (curr_cnt > max_cnt):
                max_cnt = curr_cnt
                res = num1[i-1]
                curr_cnt = 1
        if (curr_cnt > max_cnt):
            max_cnt = curr_cnt
            res = num1[n-1]
        return res

num1 = data['num1'].values
num1.sort()
n = len(num1);max_cnt = 1;res = num1[0];curr_cnt = 1

print(mostFrequent(num1, n))

Что я делаю не так?

1 Ответ

0 голосов
/ 24 октября 2018

Некоторые переменные были инициализированы вне функции mostFrequent.Они должны быть доступны внутри функции, если они будут там использоваться.Вот как это исправить,

def mostFrequent(num1,n):
    max_cnt = 1
    res = num1[0]
    curr_cnt = 1
    for i in range(1,n):
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...