Я действительно извиняюсь, если это не соответствует правилам SO, но мне нужна небольшая помощь, я лично по-прежнему считаю себя новичком в python, но я написал очень маленькую и ОЧЕНЬ НЕОБХОДИМУЮ программу для моего босса.
Я знаю, что я все еще новичок, потому что простые вещи все еще сбивают меня с толку, но каждая книга, которую я читаю для новичков, честно, просто перефразирует то, что я уже знаю, но каждая «более продвинутая» книга на самом деле не позволяет мне учиться, они зависят от примеров файлов и я никогда не понимаю, почему они создали «упомянутую» функцию или «указанный» класс. Итак, на мой вопрос ...
Есть ли какие-либо рекомендации по книге или НИЧЕГО, что отталкивает меня от этой стадии, я сначала использовал голову, и обычно они действительно хороши, но моя проблема в том, что они прослеживают меня, чтобы снова двигаться вперед, Это работает в HTML, но В Python это сбивает с толку, в основном я думаю, что мне нужно создать программу, а потом продолжать. Снова мне нравится стиль HeadFirst, но мне нужно что-то, что не заставит меня вспомнить одну вещь, просто чтобы забыть об этом ...
для записи, я зарегистрировался в некоторых книгах О'Рейли
Ответы:
Хватит читать книги.
Иди пиши код, используя свободное от чтения время. Практика. Вдумайтесь. Столкнитесь с реальными проблемами в реальном написанном вами коде.
Тогда у вас будет достаточно вопросов, на которые могут ответить продвинутые книги. Теперь у вас нет этих вопросов, и ответы в книгах не имеют для вас никакого смысла.
Это очень похоже на изучение иностранного языка или умение плавать: одни книги не могут помочь. Вам нужно много практиковаться, тогда ваш мозг «получает это».
источник
FWIW, способ, которым я действительно изучил Python, состоял в том, чтобы написать нетривиальное приложение для себя . На самом деле это была перезапись того же приложения, которое я ранее создал для изучения C (и C ++ позже), поэтому я был очень хорошо знаком с тем, какие виды обработки необходимо выполнить. Во время каждой (пере) записи я пытался использовать любые специальные функции, предлагаемые конкретным языком, который я использовал, или который я просто хотел опробовать.
В качестве бонуса, когда вы закончите или, по крайней мере, получите рабочую версию, у вас будет что-то действительно полезное, а не какое-то упражнение по программированию, которое само по себе ничего не стоит. Вы также можете вернуться позже и изменить программу после того, как узнаете больше о лучших способах выполнения задач на языке.
Один очень полезный способ стать лучше на любом языке программирования - просто прочитать много других программ. Хороший способ сделать это в наши дни - использовать Google, как описано в этом ответе StackedOverflow . Это отличный ресурс, и вы часто будете читать «промышленный код», написанный профессиональными программистами и используемый в других реальных приложениях.
Обновить:
Так как 15 января 2012 г. поиск Google по кодам был прекращен, помимо возврата к обычным поискам в Google, есть нечто, называемое « Коллекция фрагментов кода», которое выглядит многообещающим. В ответах на этот (закрытый) вопрос упоминается ряд других ресурсов. Замена для Google Code Search? ,
источник
Просто продолжайте набрасываться на простые концепции. Сделайте маленькие программы, инкапсулирующие их концепции. В какой-то момент Вы достигнете вершины понимания, и новые вещи будут иметь больше смысла для вас. Я также держу каталог под названием Python snippets. Я считаю это полезным в качестве отправной точки в определенных концепциях.
Еще один трюк, который я считаю бесценным, - это читать код других людей и комментировать его, суммируя, что делает каждая строка и раздел. Если я не знаю, то пришло время для Google. Таким образом, я вижу Python в действии и могу разбить его на аккуратные разделы.
Одним из особенно богатых ресурсов для кода является сам исходник Python.
источник
Если вы не уверены в базовых библиотеках Python или объектно-ориентированном дизайне (поскольку вы упоминаете, что не знаете, почему использовался «указанный» класс или «указанная» функция):
Создание навыков в объектно-ориентированном дизайне действительно помогает вам продумать объектно-ориентированный дизайн.
Другой сайт S.Lott, « Навыки построения навыков в Python» , также может стать для вас отличным способом расширить свои навыки работы с Python. В нем много приложений, которые немного проще, чем книги, перечисленные ниже, но все же забавны и поучительны.
Если ваша проблема в том, что вы не можете понять, как использовать Python, чтобы сделать что-нибудь интересное:
1) Начинающий Python: от новичка до профессионала разбирается в некоторых интересных вещах: графическом интерфейсе, написании собственного приложения для обмена файлами и т. Д. Мне также нравится стиль Hetland.
2) Вы упомянули книги О'Рейли, но программирование на Python почти полностью связано с приложениями, а не с синтаксисом. В нем есть много интересных приложений, которые сделают ваши творческие соки текучими. Это огромная книга (я думаю, ~ 1500 страниц), и 4e полностью посвящена Python 3, но определенно открывает вам глаза на то, как люди используют Python.
источник
Есть две книги по Python, которые я бы порекомендовал, и одна из них уже упоминалась @MikeRand:
Обратите внимание, что последние версии обеих книг охватывают Python 3. Если вы работаете с более старой версией Python, ищите более раннюю версию книг. FTR, альтернативный вариант - это Python для разработки программного обеспечения (бывший «Как мыслить как компьютерный учёный: обучение на Python», упомянутый @ oscar-mederos), но большая часть его содержимого также является вводной (и в этом смысле я бы рекомендовал вместо этого Dive Into Python ).
источник
Самый эффективный способ - регулярно проверять ваш код у опытного наставника и реализовывать его предложения. Это одно из самых больших преимуществ диплома колледжа, но оно не обязательно должно быть таким формальным. Я считаю себя продвинутым программистом, но я все еще иду по коридору, чтобы обсудить основные дизайнерские решения с коллегами до написания кода, а потом получить готовый продукт.
источник
В дополнение к некоторым из упомянутых книг (особенно « Как думать, как компьютерный ученый» ), посетите сайт ActiveState's Python Recipes . Прочитайте некоторые вещи, которые вас интересуют, посмотрите на код, а затем выясните, как бы вы подошли к проблеме и чем это отличается от того, что в рецепте.
источник
Это довольно странное предложение, но я оказался там, где я есть, задавая вопросы и наблюдая, как другие люди задают вопросы, и читая ответы. Итак, просматривая вопросы с тегами Python в Stack Overflow, или (как в моем случае) становитесь регулярными на #python на freenode.
источник
Попробуйте книгу Уоррена и Картера Санде «Привет, мир! Компьютерное программирование для подростков и других начинающих» - так я узнал, что такое Python Scripting, или я слышал, что «Привет! Питон» Энтони Бриггса тоже фантастическая книга.
Сосредоточьтесь на организации ваших программ с функциями, комментариями и некоторой структурой к тому, как это течет. Не забывайте: Программа - это просто набор инструкций, которым следует компьютер. Сделать это легко читать и понимать.
источник