Добавить в корзинуПозвонить
Найти в Дзене

Новичковый код

Любая информация забывается если ее не повторять. Существует множество «режимов рационального повторения» при соблюдении которых информация должна закрепиться в памяти надолго или даже навсегда. Я не знаю какой из «режимов рационального повторения» наиболее эффективный, думаю это решается индивидуально, но общий вывод в следующем – информацию надо повторять. Особенно это актуально для меня, поскольку я работаю в другой сфере и в течение рабочего дня и рабочего месяца, я не сталкиваюсь с кодом. Для того чтобы освежить свои знания Python я решился воспользоваться Codewars. Не буду ничего рассказывать о том, какой это крутой сайт, но на мой взгляд это бездонный кладезь практических задач для тех, кто начал изучать какой-либо язык программирования. К примеру, для самого базового уровня (8 kyu), для Python есть 314 заданий (kata), которые поделены на десятки категорий: строки, списки, функции и тд. За прошедшую неделю мне удалось получить 7 kyu, для этого я решил 12 заданий. Собственно во

Любая информация забывается если ее не повторять. Существует множество «режимов рационального повторения» при соблюдении которых информация должна закрепиться в памяти надолго или даже навсегда. Я не знаю какой из «режимов рационального повторения» наиболее эффективный, думаю это решается индивидуально, но общий вывод в следующем – информацию надо повторять. Особенно это актуально для меня, поскольку я работаю в другой сфере и в течение рабочего дня и рабочего месяца, я не сталкиваюсь с кодом.

Для того чтобы освежить свои знания Python я решился воспользоваться Codewars. Не буду ничего рассказывать о том, какой это крутой сайт, но на мой взгляд это бездонный кладезь практических задач для тех, кто начал изучать какой-либо язык программирования. К примеру, для самого базового уровня (8 kyu), для Python есть 314 заданий (kata), которые поделены на десятки категорий: строки, списки, функции и тд. За прошедшую неделю мне удалось получить 7 kyu, для этого я решил 12 заданий. Собственно во время решения 2 или 3 задания, я понял, что мои знания основ Python требуют серьезного повторения. Особенно наглядно на это указывают решения других пользователей Codewars, которые тебе любезно демонстрируются после решения задания. Вот тут я по настоящему понял какие велосипеды я использую для решения простых задач.

Советую заранее приложить ладонь к лицу и держать ее так до конца этого поста. Начнем.

Задание № 1. Необходимо определить функцию, которая в качестве единственного аргумента получает строку с именем и фамилией, а возвращает только инициалы.

Мое решение было таким:

-2

Решение покороче:

-3

Даже чтобы разобраться в этом решении, мне потребовалось время. Функция filter применяет заданную ей функцию ко всем элементам последовательности и возвращает итератор с теми объектами, для которых функция вернула True. В примере, заданной функцией является str.isupper, которая возвращается True в случае если элемент последовательности находится в верхнем регистре. Последовательностью является строка(name) переданная в функцию abbrevName, к которой применен метод title. Метод title делает каждую первую букву слова заглавной. В завершении метод join собирает отфильтрованные элементы последовательности преобразует их в строку с разделителем в виде точки.

Задание № 2. Необходимо определить функцию, которая посчитает сумму двух массивов.

Мое решение:

Раньше я не любил и не особо понимал цикл For , а теперь кажется подсел на него.
Раньше я не любил и не особо понимал цикл For , а теперь кажется подсел на него.

Решение здорового человека:

-5

Функция sum суммирует элементы объекта и возвращает результат. Объект должен поддерживать итерацию по его элементам, к примеру это может быть список.

Мне представляется очень полезным разбирать свой код решения задач с целью понять как можно было сделать его проще. Надеюсь, что никто не получил сотрясение мозга от facepalm'ов при лицезрения моего кода.

P.S. Я завершил бесплатную часть курса «Профессия Python программист» от Hexlet, но поскольку я еще не нафармил голды для покупки остальной части, буду считать, что курс временно завершен.

Kirninn уровень 2.

Умения:

Python 25 из over 1000000
Django 4,5 из over 1000000
HTML, CSS 1 из over 1000000
Способности:
Знание законодательства РФ (бесполезно для программирования)
Снаряжение: учебник Марка Лутца «Изучаем Python», Atom, ConEmu
Онлайн курс «Профессия Python программист» завершен.
Онлайн курс «Python: основы и применение» завершен.
Онлайн курс «Программирование на Python» завершен