LINUX.ORG.RU

'int' object is not subscriptable

 


0

1

Добрый день, хотела бы исправить ошибку во второй части алгоритма на пайтон .код на пайтон:

  


if __name__ == "__main__":

    max_index = 0
    max_list_from_all_plates = []
    accuracy = 0
    threshold = 0.05
 
    for single_lp in seq:
        maximum_plate_prob = []
        possible_plate_prob = []
        max_list = []
       
        for sign in single_lp:
            high_indexes = []
            for prob_id in range(0,len(sign)):
                if threshold<sign[prob_id]:
                    high_indexes.append([sign[prob_id], prob_id, CATEGORIES[prob_id]])
            max_list.append(high_indexes)
        max_list_from_all_plates.append(max_list)
        listy = []
        lista = []
        #print(max_list_from_all_plates)
        print(high_indexes)



        maxProbIds = []
        currentMaxIDs = []
        for letterProbability in max_list:
            ids = []
            maxValID = 0
            for probabilityId in range(0, len(letterProbability)):
                if(letterProbability[probabilityId]>letterProbability[maxValID]):
                    maxValID = probabilityId

                print("letterProbability", letterProbability[probabilityId])
                if(letterProbability[probabilityId][0]>threshold):
                    ids.append(probabilityId)
            if(len(ids)==0):
                ids.append(maxValID)
            accuracy += letterProbability[maxValID][0]
            maxProbIds.append(ids)
            currentMaxIDs.append(maxValID)
 
        accuracy /= float(len(high_indexes))
        
        currentText = ""
        predictionShow = ""
        for i in range(len(currentMaxIDs)):
            print("i", i)
            print("currentMaxIDs", currentMaxIDs)

            predictionShow += CATEGORIES[currentMaxIDs[0][i]]+ ": " + str(high_indexes[0][i][currentMaxIDs[i]]) + "  "

high_indexes = список данных нп.

[[0.164, 4, ‘4’], [0.06, 6, ‘6’], [0.383, 20, ‘K’], [0.063, 22, ‘M’]]

Решительно не понимаю, в чем вопрос…

Сложность всех алгоритмов сортировки (и пространственная, и временная) известна. Для каких данных лучше подходят (насколько изначально упорядочены) - тоже известно.

Коротко о главном: напишите Heap sort. Он простой в реализации, работает за O(n log n), причем гарантированно, в отличие от Quicksort, где возможен худший случай O (n^2). Если не пользоваться рекурсией, то пространственная сложность будет О(1).

Но только и писать-то опять же ничего не надо :) import heapq и все :)

Вот веселая ссылка в помощь :)

https://www.toptal.com/developers/sorting-algorithms

paddlewan ()

хотела бы исправить ошибку

Разрешаю исправить.

ТУТ проблема ‘>’ not supported between instances of ‘str’ and ‘int’ хотя maxValID = 0

При чём тут maxValID, ты сравшиваешь не индексы, а элементы массива по этим индексам. Ты ищешь максимум во внутренних массивах, где у тебя float, int и строка.

slovazap ★★★★★ ()

‘int’ object is not subscriptable

Так, иди-ка ты лесом. Будешь для каждой новой ошибки менять тему, ещё предлагаешь догадываться где она?

slovazap ★★★★★ ()
Последнее исправление: slovazap (всего исправлений: 1)
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)