Funee_monkee
Ниже прикрепил скрин моего кода, при выполнении, массив result всегда пуст
Он, скорее всего, не пуст, а просто не выводится на экран, так как print() нет для результата. Может быть всякое, конечно, так что запустить твой код и проверить, что там происходит на самом деле, мы не можем, так как ты запостил картинку. Переписывать твой код с картинки в исходник просто лень. Тут есть теги code, в них и надо писать, потому что это можно просто скопировать и запустить.
[code python]
тут код типа
[/code]
Funee_monkee
Нуждаюсь в помощи, подкорректируйте код и скажите какие есть стилистические, или практические ошибки которых стоит избегать.
Надо проверить пустой список, надо проверить список с одним элементом, надо проверить последний элемент. И естественно, не надо проверять на каждом шаге цикла, является ли этот элемент первым, так как информация эта становится известна на первом шаге цикла и остаётся известной до конца. Если там миллион элементов будет, то он будет миллион раз проверять то, что и так известно. Поэтому всё это надо проверить до входа в цикл.
Название функции выбрано неправильно. Если у тебя есть только вызов функции и ты не видишь содержимого функции, потому что оно где-то вообще в другом файле находится, то по названию непонятно, что делает функция. Ну, то есть если эту функцию будет использовать вообще другой человек, он даже не поймёт, что она делает, потому что он не знает, как ты её писал и когда. Поэтому ты должен составить название функции так, чтобы оно отвечало на вопрос “что нужно сделать?”. Прямо так задаёшь вопрос безымянной функции “что нужно сделать?” - и она отвечает “нужно сократить повторы символов в строке до одного символа”. Таким образом, ты это всё длинное название фукнции укорачиваешь до “сократить повторы символов”. И так у тебя название у функции становится squeeze_char_repeats(), например.
What should I do?
I should
squeeze characters' repeats.
tags: name function imperative