623 / 477 / 58
Регистрация: 18.09.2012
Сообщений: 1,688
1

Python FAQ: информация для новичков

14.08.2013, 12:39. Показов 106604. Ответов 14

Во многих других разделах уже есть такие темы. Надо бы догонять.

Для начала, хотелось бы немного рассказать о данном языке программирование (ЯП).
Python (питон уж как-то прижилось в русском программистском сообществе, но правильнее будет пайтон) - язык с динамической типизацией данных, мальтипарадигмальный (т.е. поддерживает многие парадигмы программирования : процедурное, ООП, функциональное ( в той или иной мере, по мере изучения питона, многие поймут недостатки этого направления).
Достоинства:
- очень удобный синтаксис
- скорость разработки
- большое количество "сахара" от разработчиков языка
- кроссплатформенность ( достаточно наличия необходимых библиотек и интерпретатора, что бы запустить вашу программу на другой ОС)
- большое кол-во библиотек( пока тройку не трогаем), позволяет не изобретать велосипеды

Где используется?
- Компания Google использует Python в своей поисковой системе и оплачивает труд создателя Python — Гвидо ван Россума
- Такие компании, как Intel, Cisco, Hewlett-Packard, Seagate, Qualcomm и IBM, используют Python для тестирования аппаратного обеспечения
- Служба коллективного использования видеоматериалов YouTube в значительной степени реализована на Python
- NSA использует Python для шифрования и анализа разведданных
- Компании JPMorgan Chase, UBS, Getco и Citadel применяют Python для прогнозирования финансового рынка
- Популярная программа BitTorrent для обмена файлами в пиринговых сетях написана на языке Python
- Популярный веб-фреймворк App Engine от компании Google использует Python в качестве прикладного языка программирования
- NASA, Los Alamos, JPL и Fermilab используют Python для научных вычислений.

Литература:
- Python. Подробный справочник, 4-е издание (Автор: Бизли Д.)
- Программирование на Python, 4-е издание, I том (Автор: Лутц М.)( 4-е издание python 3, 3-e издание python 2.6, разницу попозже обсудим)
- http://www.python.ru/files/book-ods.pdf

Сайты:
- http://python.ru/
- http://python.su/
- Официальный сайт

Советы от себя лично:
- Последнее время набирает обороты python 3. . Личный совет, для новичков особенно, не торопитесь садиться за python 3. Спокойно изучайте python 2.7-2.6, особо дискомфорта вы не почувствуете при переходе на python 3., но избавитесь от проблем ( отсутствие библиотек, одна из самых главных).
- После изучения может возникнут вопрос: "А куда идти дальше?" После изучения синтаксиса, основных возможностей языка, могу посоветовать ресурс ( он про java and C#, выкиньте оттуда содержания про эти ЯП, и спокойно изучайте другое) сюда, там что примерно нужно знать ( основы ООП, основы SQL, и др.). Можно переключиться на изучение фреймворка django ( тут документация на русском, основные моменты + python сообщество) или допустим изучать GUI на python ( PyQt, TkInter не советую, устарело немного, но для новичков тоже подойдёт).

Что нужно для начало работы с python 2/3:
1) интерпретатор. Скачать можно тут.
2) текстовый блокнот ( или IDE)
В принципе все. Все можно запускать из консоли.
Пример (python 2.7):
Python
1
2
s = 'Hello, World'
print s
1)Сохраняем скрипт:
Python FAQ: информация для новичков


2)Запускаем через консоль:
Python FAQ: информация для новичков


Вот и готово. Первая программа на python 2.7.
Чтобы можно было работать в консоли, как описано во втором пункте, необходимо, чтобы python был в переменной окружения PATH.

Список IDE:
Eclipse
Eclipse: Бесплатная IDE. Написана на Java. Неплохая IDE. Большое количество плагинов для python (самые популярные pydev, aptana). Есть поддержка django. Из недостатков стоит отметить слабое автодополнение, немного тяжеловесная. Лично я на ней написал не один крупный проект. Больших нареканий не было. Присутствует отладчик.
Скачать

IDLE
IDLE: Бесплатная IDE. Очень удобная для начинающих. Можно быстро написать элементарные скрипты. Большие проекты на ней проблемно писать правда. Присутствует отладчик, неплохое автодополнение в стиле linux консолей (можно через tab или подождать немного)
Скачать (насколько мне известно она идёт уже вместе с интерпретатором, но в некоторых системах python уже вшит в систему без IDLE)

NetBeans
NetBens: Тоже бесплатная IDE, ничего плохо сказать лично не могу. Работал на ней мало. По впечатлению, местами может быть и помощнее Eclipse, но нет поддержки django (планируется в будущем). Присутствует отладчик.
Скачать

PyCharm
PyCharm: Платная IDE, но на порядок мощнее NetBeans и Eclipse. Прекрасное автодополнение, хорошая подсветка синтаксиса, поддержка django, встроенная поддержка всевозможных SVN. И много другого приятного. ( на данный момент работаю на ней). Самый лучший отладчик из тех IDE на которых я работал с python ( сравним с VS)
Скачать

Aptana Studio
Aptana Studio 3: Бесплатная IDE. Очень похожа на Eclipse. Плюсы и минусы те же. С Eclipse перешел на неё.
Скачать

Visual Studio
Visual Studio 2010 + Plagin for Python Ничего не могу сказать. Зная VS думаю вещь очень и очень стоящая.
Почитать тут.

Eric
Eric: Написанная на Python довольно функциональная среда разработки. Поддерживает разработку на Python и Ruby. Скачать


Очень часто встречаются проблемы с unicode строками в python( 2-ой ветке). Дабы избегать дальнейших вопрос, почитай статью.

Ребята, может надо что-то добавить, напишите сюда или в личку, если есть, добавлю. Или напишу.
28
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
14.08.2013, 12:39
Ответы с готовыми решениями:

Книги для новичков в Python-е
пожалуйста поджскажите книгу по питон для новичка, которую можно освоить легко

Python для полных новичков (парсер)
Здравствуйте. Всех с праздниками! Сразу хочу извиниться за пост, но очень надо)) Подскажите,...

FAQ: Установка библиотек для Python
Инструкция по установке библиотек для python Введение Установка библиотек на всех платформах...

Python для веб - нужна информация
Доброго времени суток уважаемые! Начну по порядку. Есть проект, одним из вариантов реализации...

14
1362 / 1074 / 110
Регистрация: 16.03.2012
Сообщений: 4,547
14.08.2013, 22:32 2
«Марк Саммерфилд — Программирование на Python 3. Подробное руководство». В книге ~600 страниц.
Можно почитать в качестве второй или третьей книги, ориентирована на человека, который уже знаком с программированием.

Могу посоветовать от себя ресурс codecademy.com.
Все четко, понятно, задания разбиты по категориям, все идет последовательно, мне как новичку удобно пользоваться.
Миниатюры
Python FAQ: информация для новичков   Python FAQ: информация для новичков  
9
0 / 0 / 0
Регистрация: 20.10.2013
Сообщений: 2
21.10.2013, 00:15 3
Также предлагаю ознакомится с этим ресурсом : http://acodemy.ru/
начал с него свое изучение Питона.
По сути это тот же http://www.codecademy.com , только с одним языком Python и русскоязычными заданиями.
0
2 / 2 / 0
Регистрация: 22.08.2013
Сообщений: 38
03.11.2013, 16:45 4
Вот здесь довольно доходчиво!
http://programarcadegames.com
1
139 / 49 / 2
Регистрация: 06.08.2013
Сообщений: 292
Записей в блоге: 4
22.12.2013, 13:07 5
http://informatics.mccme.ru/mo... php?id=156

Вот тут. Дается теория и можно решать задачи и сдавать их в тестовую систему.
2
Администратор
Эксперт .NET
9345 / 4627 / 755
Регистрация: 17.04.2012
Сообщений: 9,484
Записей в блоге: 14
09.06.2014, 15:33 6
Очень хорошая среда разработки для Python - Spyder
Она написана на PyQt и ориентированна на научную, в частности математическую разработку. Однако, никто не запрещает разрабатывать и для других направлений!
Среда включает в себя все основные атрибуты как то: подсветка и автодополнение кода, поддержка IPython, вывод справки по объектам, методам, классам и т.д. Со всеми возможностями можно ознакомиться на оф. сайте.
Скриншоты
Python FAQ: информация для новичков
Python FAQ: информация для новичков
Python FAQ: информация для новичков


Эта IDE входит в обширный пакет WinPython, который позволяет установить множество интересных библиотек и инструментов "одним махом".
Помимо Spyder в неё входят: пакет для разработки на PyQt, IPython, NumPy, SciPy, Matplotlib, guiqwt и многое другое.
Схожим с ним является пакет Python(x, y).
3
0 / 0 / 0
Регистрация: 05.12.2012
Сообщений: 22
13.06.2014, 04:56 7
http://www.lfd.uci.edu/~gohlke/pythonlibs/
пригодиться
0
298 / 256 / 57
Регистрация: 11.06.2012
Сообщений: 1,557
08.10.2014, 19:20 8
Пару слов от себя - по поводу того какую книгу выбрать - Начните с Лутца, как только посчитаете что немного разбираетесь и Лутца станет читать скучновато (это рано или поздно случится со всеми, ибо без обид - там куча лишнего текста) - вперед за Марк Саммерфилд " Программирование на Python 3. Подробное руководство".

По поводу ИДЕ. Много слышал, что автодополнение для людей начинающих изучать язык это зло. Привыкший к тому что было в вижуал студио при делании чего либо С# был крайне с этим не согласен, спустя некоторое время понял что лучше все таки использовать автодополнение по минимуму.
Пару слов про увиденные и опробованные мною иде.
Нет бинс, Еклипс - неплохо, но тяжеловаты. Понравись не слишком, ставить их специально ради питона честно говоря не вижу смысла, но если вы используете кроме питона еще один из языков поддерживаемых данными ИДЕ - рекомендую попробовать.
Spyder - отличная вещь. Потратьте немного времени и трафика и опробуйте ее. Не пожалеете. Больше сказать нечего.
Aptana Studio, Ninja-IDE ( или как то так, не помню точное название) - не понравилось.
Visual Studio - ок, но в силу того что ничего особенного + только под виндовс - я попробовал ее и без сожаления забыл.
SublimeText - легкая, очень, кросплатформенная. Из коробки - минимум необходимого. И уже выглядит хорошо. А при должной настройке, установке плагинов ( которые заметьте пишутся на питоне) - великолепная вещь, причем для разработке не только на питоне. Некоторые предпочитают ее пичарму.
PyCharm - лучшее что может быть наверное. Минуса всего 2 - тяжеловата, и в бесплатной версии функционал заметно урезан, зато в платной по умолчанию есть все необходимое, что в других иде можно достичь установной плагинов, а иногда и нельзя достичь вообще. Одна из весьма немногих вещей увидев которые я понял - я ее куплю когда будет такая возможность.

Еще такая вот вещь. Разработка( это громковато сказано, но я думаю все поняли что я имею ввиду) на питоне на своем любимом планшете с ОС Андроид. Интересующихся данным извращением я полностью понимаю. Поищите в интернете следующие вещи - Qpython ( качается с плеймаркета), еще 2 вещи которые возможно относятся к данной теме - sla4, kivy.
Кому интересна более полноценная разработка на питоне, но опять же еще более извращенным способом - могу предложить проет под названием Linux-on-android ( требует рут права на устройстве) либо что то аналогичное, я встречал как минимум один аналогичный проект. Что вышеописанная программа делает - запускает относительно полноценный линукс на вашем планшете/телефоне. Оконный интерфейс там выглядит крайне убого, зато в консоли - делай что душе угодно. То есть устанавливай все то что ты можешь поставить на настольную версию линукса. Есть возможно какие то ограничения, но я их пока не встретил. В чем же скажете писать? Настроите оконный вариант - пишите в том же в чем и на десктопе, а нет - спешите осуществить знакомство с вим либо емакс ( я бы рекомендовал первый вариант). Пару слов касательно этого способа - запущенный веб-сервер джанго ( это я к примеру, насчет других я не знаю) доступен из вашего браузера в ОС андроид, о виме - пару интересных статей по настройке в общем, настройке касаемо питона можно найти на хабре ( заработали правда не все вещи).
3
3 / 3 / 4
Регистрация: 11.03.2014
Сообщений: 26
09.10.2014, 22:06 9
http://www.pythontutor.com/
Удобно для понимания работы простых скриптов
0
298 / 256 / 57
Регистрация: 11.06.2012
Сообщений: 1,557
01.11.2014, 01:09 10
Вдруг кому интересны задачи математического плана - вот https://projecteuler.net/problems .
0
laxl
18.11.2014, 16:44 11
http://aliev.me/runestone/
Алгоритмы и структуры данных в контексте языка Python
List13
27.11.2014, 10:53 12
Цитата Сообщение от Wolkodav Посмотреть сообщение
- Программирование на Python, 4-е издание, I том (Автор: Лутц М.)( 4-е издание python 3, 3-e издание python 2.6, разницу попозже обсудим)
Подскажите пожалуйста, так все таки какое издание выбрать 3-е или 4-е ?
Вы советуете начать с версии 2.6-2.7, а 4-е издание Лутца как понимаю только о версии 3 или книга включает в себя 2.6-3 версии ?
Администратор
Эксперт .NET
9345 / 4627 / 755
Регистрация: 17.04.2012
Сообщений: 9,484
Записей в блоге: 14
27.11.2014, 13:11 13
Отличия между версией 2.7 и веткой 3 не такие уж большие, но только в 3.x сейчас появляются новые возможности, а 2.7. не развивается, только выходят исправления багов. Логичнее было бы изучать актуальную технологию, так что берите 4-е издание Лутца.
2
10 / 1 / 0
Регистрация: 29.11.2014
Сообщений: 9
30.11.2014, 00:31 14
Много несовпадений с первым постом.

Марк Лутц. Изучаем Python, 4-е изданиеИзучаем Python. Получаем знания. В книге рассматриваются одновременно 2 ветки 2.х - 3.х и их различия. Рекомендуется новичкам.

Марк Лутц. Программирование на Python I\II (4-е издание)тут тот же автор(М.Лутц) учит Вас как их(полученные знания) применять. Книга в двух томах.
В пункте "Литература" первая ссылка ведет именно на М.Лутца. Не путать со справочником.

Собственно справочник Python. Подробный справочник, 4-е издание .

Книга Программирование на Python 3. Подробное руководство(Марк Саммерфилд) обладает корявым переводом. Если внимательно читать Лутца "Изучаем Python", то можно налету схватывать различия 2.х - 3.х

Чтение книг именно в этой последовательности.(Для новичков)

После Лутца можно читать документацию на оф. сайте и смотреть различия\доработки текущей версии(3.4)

А так же советую:
Майкл Доусон. Программируем на Python. 3-е издание(2014). В книге рассматривается 3-я ветка Python(конкретно 3.3.1). Книга будет полезна тем, кто уже работал с Python или другими ЯП. А так же рекомендую после М.Лутца. Не рекомендуется в качестве первой книги, если планируете брать Python одним из основных яп в своем деле.

A Byte of Python — рассматривается Python 3-й ветки(3.3.0 ). Книга будет полезна тем, кто уже работал с Python или другими ЯП. А так же рекомендую после М.Лутца. Не рекомендуется в качестве первой книги, если планируете брать Python одним из основных яп в своем деле.


А теперь немного связок:
1. Если Вы решили связать свою жизнь с Python(Взять его в кач-ве основного ЯП), Вы новичок в программировании то скорее всего вам подойдет такой ход:
М.Лутц "Изучаем Python" 4-е издание > М.Лутц "Программируем на Python ТомI\II" > Справочник М.Бизли >+ Следить за развитием на Оф. сайте и почитывать документацию.

2. Если Вы далеко не новичок в программировании, хотите взять Python как основной ЯП то:
A Byte of Python > Программируем на Python ТомI\II > Справочник М.Бизли >+ Следить за развитием на Оф. сайте и почитывать документацию.

3. Если Вам нужнен Python для "галочки", и не важно, новичок Вы, или нет, то:
A Byte of Python / Майкл Доусон. Программируем на Python. 3-е издание(2014) > Справочник М.Бизли.


Примечание: Все приведенные выше книги переведены на Русский язык и имеются в электронном виде на торрент-трекерах.(Соответственно только для ознакомления)
Терпения при прочтении Лутца.
1
Эксперт Python
4603 / 2024 / 359
Регистрация: 17.03.2012
Сообщений: 10,078
Записей в блоге: 6
23.12.2014, 13:32 15
Информация для новичков, которым что-то нужно сделать с массивом - сложить элементы или ещё что-нибудь.
В "чистом" Питоне НЕТ МАССИВОВ!
Для массивов надо использовать дополнительные библиотеки, из которых самая популярная - numpy.
3
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.12.2014, 13:32
Помогаю со студенческими работами здесь

Подскажите пожалуйста хорошую литературу для изучения с++, для новичков
Чтобы подошла человеку , который не сталкивался с программированием , а вот сейчас ему очень срочно...

Какой бесплатный хостинг для сайтов подходит для новичков?
Мне нужно узнать какой бесплатный хостинг для сайтов подходит для новичков(просто разобраться при...

для новичков
Ищу партнёров для биржи статей в свою очередь готов оказать консультацию по вопросам...

Не для новичков по C#
Задания не для новичка уж явно.., не могу сделать эти первые три задания? Ну вот 4-ую сделал,...

IT для новичков
Здравствуйте, вопрос такой: какие IT навыки, помимо знания языков программирования, могут...

Задание не для новичков(суровый тест для админов)
вот схема! (см вложения внизу) Здравствуйте, уважаемые админы! прошу не пинать. если вопрос...

Чем определяется одинаковость урлов /page?FAQ и /page.php?FAQ
Подскажите, пожалуйста, какая опция php или настройка сервера позволяет не указывать .php в урлах?...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Закрытая тема Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru