Сузана обнови решението на 30.10.2022 14:06 (преди над 2 години)
Може да греша, но логиката, която едновременно повишава i
и понижава numbers_length
, ще пропусне някои символи.
Виждам, че си взела мерки за промяната на тези променливи при определени условия, но все пак имам предчуствие, че лоигаката се чупи в конкретни случаи. Съветвам те да изтестваш добре, за да си сигурна, че не съм прав.
Дори да работи правилно, този похват е доста "чуплив" и труден за разбиране от читателя, така че те съветвам да се опиташ да инкрементираш само една променлива.
Излишно е да взимаш .items()
в променлива. Просто го сложи на слеващия ред.
for key, letter in alphabet.items()
Да, горният коментар е нужен, за да знаеш за други проекти, но като цяло и този цикъл е излишне. Можеш просто да вземеш елемент от dict
по ключ:
alphabet['letter']
или alphabet.get('letter')
, застраховайки се с отделна проверка, че резултатът не е None или exception, в случай на нужда.
Само идея:
numbers.extend([num] * count)
Можеш да генерираш тази логика чрез алгоритъм, за да спестиш многото почти идентични редове.
Можеш просто
return result % 30 == 0
...НО, защо речи, че всички думи са с дължина 30?