Первые шаги Python программиста
Дошли руки до Питона. Я не гуру и покажу вам основы Python. Сила любого программиста в хорошем знании основ. Глупо изучать сложные разделы языка если вы не знаете элементарных вещей. Вам советую пройти мои шаги и начать самостоятельное развитие. Если вы в прошлом PHP программист, то python вы изучите сравнительно легко. Я покажу вам переход с PHP на Python. Многие примеры будут написаны на РHP и Python. Очень часто говорят, что питон - лёгкий язык. Не верьте ). Он сложно устроен. Написать сайт на питоне сложнее чем на PHP.
Плюсы Python
- Короткий код
- Отсутствие знака ; в конце строк
- Синтаксический сахар
- Новые типы данных
- Подключаемые модули
- Внутренние модули
- PIP - система управления пакетами
- Крутые фреймворки: Django, Tornado
- Хорошо дружит с linux. Серверное программирование
- Многопоточность threading
Минусы Python
- Сложное администрирование. Непростая настройка окружения для ваших скриптов.
- Отсутствие констант
- Сложное внедрение кода python на веб страницы.
- Мало документации на русском языке
Сотрудники яндекса показали как используют код python. Благодаря короткому синтаксису они смогли обработать значение переменной 7-10 функциями. Причём визуально обработка переменной вытянулась в одну строку. Посмотрите на пример. Символ \ - это перенос строки. У меня код просто не поместился в окне.
#!/usr/bin/python3
str = 'приехали автомобили: #1#, #2#, #3#'.replace('#1#', 'мерседес')\
.replace('#2#', 'ауди')\
.replace('#3#', 'бмв')
print(str)
'''
вывод:
приехали автомобили: мерседес, ауди, бмв
'''
На PHP подобное решение выглядит довольно громоздко. Сам язык python не является экзотикой. На django написаны многие сервисы yandex. Python любят использовать в google.
До выхода PHP 7 python считался самым быстрым языком для веба. Теперь трудно судить что быстрее? Возможно через некоторое время выйдет более быстрая версия python. Смотрите pdf-версию схемы обучения python. Её можно увеличить и рассмотреть.
Для обучения необходимо время. Скажу сразу, что нужно учить 1 год и более. Я потратил пол года и не смог выучить питон. Основы я уже понимаю. Знаю как пользоваться некоторыми модулями. Буду двигаться дальше.
Вы должны решить, что именно вам учить? Вам может, быть и не нужно ООП и сложные фреймворки? Вы можете легко писать скрипты при помощи процедурного стиля. Сам создатель питона Гвидо ван Россум рекомендует писать простым стилем и не усложнять скрипты.
Предлагаю вам на сайте stepik.org посмотреть 2 курса: Python: основы и применение, программирование на Python. Так у вас появится представление о Python. Потом советую почитать мои статьи.
Основы
- Типы данных
- None(null)
- строки
- Числа
- вещественные
- целые
- комплексные
- Исключения (exceptions)
- колекции
- список(list)
- кортеж(tuple)
- множество(set)
- неизменное множество(frozenset)
- словарь(dict)
- функции
- внутренние
- анонимные lambda
- пользовательские
- замыкания
- генераторы
- декораторы
- Условные операторы
Модули
- numpy
- pillow
- pil
- itertools
- collection
- os
- sys
- json
- xml
- csv
- math
- re
- random
- configparser
- imghdr
- logging
- shutil
- pickle
- Базы данных
- sqlite3
- MySQLdb
- postgresql
- кеширование
- memcached
- redis
- парсинг
- urllib
- urlparse
- requests
- Время
ООП
- Классы
- свойства
- методы
- Волшебные/магические методы
- геттеры
- сеттеры
- объекты
- свойства
- методы
- декораторы
Фреймворки
- синхронные
- bottle
- flask
- django
- асинхронные
- twisted
- tornado
Хочу вас предупредить, что то что вы видите - это только базовый набор. Модулей в разы больше. Фреймворков у python масса. Начните с самого простого. Основы - это то, с чего надо начать! Если смотреть на схему, то сложность нарастает сверху вниз. В схеме есть сложные разделы: фрейморки, парсинг. Парсинг сайтов и документов - сложное занятие. Тут без опыта тяжело писать код. Фреймворки - это особая тема для опытных программистов. Можно сделать вылазку и написать сайт на django. Если вы плохо знаете основы, то не сможете сделать сложный функционал. В django активно применяются декораторы. Вы должны легко писать пользовательские функции. Регулярные выражения Python применяются чуть ли ни на каждом шагу. Фрейворк постоянно требует подключения различных модулей. Игра стоит свеч!
Предлагаю вам интересный ресурс для обучения: онлайн-курс по Python. Там есть бесплатные и платные уроки по python.





дата: 2018-04-17 13:14:40
По-моему, то, что мы видим - это не базовый набор а уровень мидл. Правда, чтобы претендовать на этот уровень - надо, как минимум, кроме вышеперечисленного владеть системой контроля версий, применять пакеты для тестирования.
дата: 2018-04-17 13:35:00
Привет 111! Уровень сложности нарастает сверху вниз если смотреть на схему. Внизу самые сложные технологии. Я бы советовал сперва учить bash, а потом только браться за python 3.