Дмитрий Гавриленко: Дмитрий, я сам не гуру. Но если массив не упорядочен, то придётся проверить каждый его элемент - по другому никак. А это и есть сложность O(n), и быстрее линейного поиска ничего не получится.
Для некоторых частных случаев можно применить хитрости и добиться экономии в несколько раз. Например, если в искомом паттерне по нескольку раз повторяются одинаковые символы. Но для общего случая - только линейный поиск.
1. Является ли множество характеристик типа "прекрасен", "ужасен", "так себе" заранее определённым или оценивающие их на ходу генерят?
2. Если их множество конечно и заранее определено, то можно ли их однозначно упорядочить по шкале "плохо" - "хорошо", или они субъективные и нечёткие?
3. Являются ли все отзывы непротиворечивыми, или одни отзывы могут противоречить другим?
Сергей Ивонов: Насколько я понял, вас именно веб-направление интересует, а я эту сферу не очень хорошо представляю. Но если судить по тому, что я вижу, питонисты вполне неплохо себя чувствуют в веб-фрилансе, главное нормальный фреймворк освоить. Самый распространённый, насколько я знаю, - Django.
Опишите подробнее конечную задачу. Программный анализ звука - это очень сложная и комплексная задача, нельзя сказать просто "поиск по аудио". В такой формулировке совершенно не ясно, о чём именно вы спрашиваете.
Не вполне понятно, что вам нужно. Если вы не хотите, чтобы метод d печатал любой полученный аргумент, а только конкретную строку, то вообще уберите из него возможность принимать аргументы. Ну или более внятно объясните, какое поведение класса вы хотите видеть.
xmel89: Не 0, потому что Math.pi - это не точное значение "пи". А точного в компьютерной памяти вообще уместить нельзя, оно невыразимо конечным числом бит.
Вряд ли это имеет отношение к диаграмме Вороного. Это похоже на обычную правильную шестиугольную сетку, у которой просто слегка рандомно подвинуты вершины. Если присмотреться, то там явно видны горизонтальные и диагональные ряды.
Станислав Гордиенко: 1). Продавцы будут сами создавать эти правила или просто выбирать из некоторого готового списка? 2). Все правила укладываются в схему "если от ... до ... штук - то ... % скидки" или предполагаются и другие шаблоны правил?
А зачем так делать? Если вторая функция бывает нужна вне первой, то и объявлять её нужно вне первой. А то вы изначально используете неправильное решение проектирования, а потом ищите хаки, чтобы заставить это работать.
А у вас при запуске этой программы ничего и не должно происходить. Команда open просто устанавливает связь питона с файлом, чтобы какими-то дальнейшими командами с этим файлом работать. Внешне это никак не проявляется. То есть не будут открыты какие-либо окна или что-то ещё. Вы вообще никак не узнаете, что команда open выполнилась, если после неё не выполняете каких-то других команд с этим файлом.
Roman Kitaev: Достаточно, конечно. Но я недолюбливаю длинный многосоставные строки )) Ну и потом, есть же дзен питона: "плоское лучше, чем вложенное" ))