Вивчити Python можна швидко. Наскільки швидко — залежить від того, чого конкретно ви хочете досягти з його допомогою і скільки часу можете виділити на регулярне вивчення та практику. Професіонал з десятирічним стажем, який навчає мові останні п’ять років, склав roadmap з восьми послідовних етапів навчання для всіх програмістів-початківців.
Ця стаття — переказ оригінальної статті з нашими доповненнями.
Спочатку хочу зробити деякі припущення про вас і причини, які спонукали прочитати цю статтю. Ось на що ми розраховуємо на старті:
Цей матеріал написаний для початківців. У ньому є поради та стратегії, щоб будь-хто міг вивчати Python самостійно та максимально ефективно.
Якщо вас цікавлять базові основи програмування на Python, навчання може зайняти не більше трьох-чотирьох тижнів при регулярній практиці. Якщо ж ви зацікавлені в освоєнні Python для виконання складних завдань або реальних проєктів для зміни професії, це займе вже набагато більше часу.
У когось на це йде кілька місяців, але зазвичай гуманітарій опановує мову програмування (при належному старанні) приблизно протягом року. У цій статті наведено поради та найкращі ресурси, які допоможуть отримати знання з програмування на Python у максимально короткі терміни.
Якщо ви ставите запитання, скільки коштуватиме вивчення Python, то відповідь буде: «залежить від ситуації». В інтернеті є великий вибір безкоштовних ресурсів, не кажучи вже про різні книги, курси та платформи, які опубліковані в електронному вигляді спеціально для початківців. Але загалом, можна сказати, вивчення мови програмування — досить бюджетне захоплення.
Інше запитання, яке може виникнути: наскільки складно вивчити Python? Це також залежить від ситуації. Якщо на старті у вас є досвід програмування іншою мовою, наприклад, R, Java або C++, то вам, швидше за все, буде легше швидко вивчити Python, ніж тому, хто раніше не програмував взагалі.
Вивчення такої мови програмування, як Python, схоже на вивчення природної мови. Спочатку ви запам’ятовуєте базову лексику та вивчаєте правила синтаксису. Згодом додаєте до свого репертуару нові слова та пробуєте нові способи їх використання. З вивченням Python все те саме.
Зараз ви вже думаєте: «Здорово! Можна вивчити Python швидко, дешево та легко. Просто скажіть, що читати, і направте мене потрібним шляхом». Не так швидко! Є ще четверта річ, яку потрібно врахувати, і це те, як саме вивчати Python.
Дослідження в галузі навчання показали, що не всі люди навчаються однаково. Одні найкраще навчаються, коли читають щось самостійно, інші — коли бачать і чують (іноді краще в групі з однодумців). Декому подобається вчитися у грі, а не на курсах чи лекціях. Вивчаючи наведений нижче список ресурсів, враховуйте свої переваги в навчанні.
А тепер приступимо до роботи. Нижче наведені вісім базових порад, які допоможуть швидко вивчити Python. Це загальна покрокова стратегія, яку можна доповнювати
Спочатку треба вивчити основи. Без їх розуміння вам буде важко працювати над складними проблемами, проєктами чи сценаріями використання. Приклади основ Python включають такі напрями:
Усі ці основи можна швидко вивчити на різних вебсайтах: docs.python.org, RealPython.org, stavros.io, developers.google.com, pythonforbeginners.org.
Докладніше див. розділ «Вебсайти» нижче.
Перш ніж почати вивчати Python, визначте мету свого навчання. Труднощі, з якими ви стикнетеся на початку, буде легше подолати, якщо ви будете чітко пам’ятати про мету. Крім того, ви знатимете, на якому навчальному матеріалі зосередитися, а який можна пропустити.
Наприклад, якщо хочете вивчити Python для аналізу даних, потрібно буде виконувати вправи, писати функції та вивчати бібліотеки Python, які полегшують аналіз даних. Нижче наведені типові приклади цілей вивчення Python, які можуть бути для вас актуальними:
Ресурси з вивчення Python можна розділити на три основні категорії:
Очні або дистанційні платні курси теж один з варіантів, але ми їх не будемо розглядати в цьому дописі (ми ж обіцяли бюджетне та доступне всім навчання).
Інтерактивні ресурси широко поширилися останніми роками завдяки популяризації інтерактивних онлайн-курсів, які надають практичні завдання з кодингу та пояснення. А якщо вам здається, що ви кодите, то це тому, що ви дійсно кодите. Інтерактивні ресурси зазвичай доступні безкоштовно чи за символічну плату, або є безкоштовна пробна версія перед покупкою.
Неінтерактивні ресурси — найтрадиційніші та перевірені часом, наприклад, книги (цифрові та паперові) та вебсайти («онлайн-підручники»). Багато з тих, хто починає вивчати Python, віддають їм перевагу через звичний і зручний вигляд. Є безліч таких неінтерактивних ресурсів, і більшість із них є повністю безкоштовними.
Відеоресурси стали популярними останніми десятьма роками завдяки МВОКам (масовим відкритим онлайн-курсам) та нагадують університетські лекції, записані на відео. Більше того, вони часто підтримуються чи просуваються провідними університетами.
Зараз, наприклад, на YouTube є безліч відеоресурсів з різних предметів, включаючи програмування на Python. Деякі з цих відеоресурсів є попередньо записаними курсами, а інші транслюються у прямому ефірі. Наприклад, компанія General Assembly випускає такий курс Python, який охоплює основи мови за один тиждень.
Нижче наведений список ресурсів, які допоможуть швидко освоїти Python. Вони відносяться до категорій, зазначених вище, та охоплюють як мінімум основи Python. У списку позначені зірочкою (*) безкоштовні ресурси.
І відразу зауваження: звикайте до англійської мови, це значно допоможе, коли ви перейдете до етапу пошуку роботи, адже в процесі навчання ви чудово схопите всю термінологію англійською. Без англійської мови заробляти на програмуванні досить складно, тому одразу почніть навчатися англійською. Це значно покращить ваші шанси на круту роботу.
Неінтерактивні ресурси поділяються на дві підкатегорії: книги та вебсайти.
Більшість книг призначені для програмістів, зацікавлених у глибокому вивченні Python, або для майстрів Python, які шукають надійні довідкові матеріали («куховарські книги») або спеціалізовану літературу. Нижче я перерахував лише ті книги, які РЕАЛЬНО корисні для початківців.
Я вирішив включити тільки ті, які мають явну перевагу щодо зручності або навчальної програми. Усі ці ресурси безкоштовні.
Відеоресурси стають усе популярнішими, і на те вагомі причини: вони зручні. Навіщо читати підручник чи навчальний посібник, якщо можна комфортно вивчити той самий матеріал у відеоформаті на комп’ютері чи мобільному пристрої? Відеокурси поділяються на дві підкатегорії: попередньо записані та живі.
General Assembly: цей відомий живий онлайн-курс від General Assembly позбавляє всіх здогадів або неточностей при вивченні Python. У General Assembly у вас є підготовлена та всеосяжна програма вивчення Python, живий викладач, помічник, а також мережа колег і випускників, з якими можна спілкуватися під час та після курсу.
Крім вивчення мови Python корисно вивчити одну або дві бібліотеки Python. Бібліотеки — це набори спеціалізованих функцій, які є «прискорювачами» для стандартних завдань розробки. Без них вам довелося б писати власний код з нуля для виконання спеціалізованих завдань. Наприклад, Pandas – дуже популярна бібліотека для роботи з табличними даними. Numpy допомагає виконувати математичні та логічні операції над масивами.
Для опису популярних бібліотек потрібен окремий пост, а поки ознайомтеся з цією сторінкою Python.org про стандартні бібліотеки Python і цією сторінкою GitHub про додаткові бібліотеки Python.
Ви можете завантажити програму встановлення Python із сайту Python Software Foundation, а потім шукати та завантажувати додаткові бібліотеки; або можна завантажити програму установки Anaconda, яка вже поставляється з багатьма пакетами, які ви регулярно використовуватимете, особливо якщо плануєте використовувати Python для аналізу даних або науки про дані.
Вам необхідно встановити інтегроване середовище розробки (IDE), яке є застосунком, що дозволяє створювати сценарії, тестувати і виконувати код на Python.
Коли йдеться про IDE, правильною буде та, якою вам найбільше подобається користуватися. Згідно з різними джерелами, найпопулярнішими IDE/текстовими редакторами Python є PyCharm, Spyder, Jupyter Notebook, Visual Studio, Atom та Sublime. Спочатку хороші новини: майже всі вони безкоштовні, тому спробуйте кілька, перш ніж зупинитися на одному.
Далі «погані» новини: кожна IDE/текстовий редактор має трохи відмінний інтерфейс і набір функцій, тому знадобиться деякий час, щоб навчитися користуватися кожною з них, щоб нарешті усвідомлено вибрати щось своє.
Для новачків у Python я рекомендую кодувати в Jupyter Notebook. У нього простий дизайн і впорядкований набір можливостей, які не відволікатимуть та полегшать практику та створення прототипів на Python. Він також постачається зі спеціальним дисплеєм для відображення кадрів даних і графіків. Якщо ви завантажите Anaconda, Jupyter Notebook буде встановлений. З часом я раджу вам спробувати інші IDE, які краще підходять для розробки (Pycharm) або науки даних (Rodeo) і дозволяють інтегруватися (Sublime).
Крім того, подумайте про встановлення обробника помилок або автокомплітера на додаток до IDE, особливо якщо ви працюєте над тривалими проєктами. Він вкаже на помилки та допоможе вам писати код швидше. Хорошим варіантом є Kite, до того ж він безкоштовний та інтегрується з більшістю IDE.
Коли ви, будучи новачком, працюєте над вправами, прикладами та проєктами на Python, одним з найпростіших способів усунення помилок буде вивчення досвіду інших розробників Python. Просто запустіть швидкий пошук в інтернеті та вкажіть ключові слова щодо вашої помилки.
Наприклад, «how to combine two lists in Python» или «Python how to convert to datetime» — цілком прийнятні пошукові запити, які приведуть вас на кілька популярних форумів, таких як StackOverFlow, Stack Exchange, Quora, Programiz та GeeksforGeeks.
Це та частина, яку більшість людей пропускають, що призводить до невдач або затримок. Тепер усе, що вам залишилося, це скласти розклад. Я рекомендую вам скласти розклад мінімум на два тижні, щоб розподілити час між заняттями та забезпечити собі достатньо часу для адекватного вивчення основ Python, практики кодування в IDE та усунення неполадок у коді. Можна рухатися вперед такими двотижневими спринтами, причому дуже важлива систематичність занять.
Частина складності (і насолоди) вивчення Python або будь-якої іншої мови програмування полягає в усуненні помилок. Після перших двох тижнів ви будете вражені тим, наскільки далеко ви просунулися, і у вас буде достатньо практики, щоб продовжити вивчення більш просунутого матеріалу, що надається вибраним вами ресурсом. У міру накопичення досвіду та систематичності занять ви будете набувати все більшої впевненості в тому, що робите. Поки це самонавчання поступово не стане процесом, що самопідтримується, перетворившись на ще одну (хочеться вірити, що корисну) звичку.
Ми визначили мінімальні терміни навчання, ви знаєте, як вибрати мету навчання, у вас є список навчальних ресурсів і методів навчання, з яких реально можна вибирати, і ви знаєте, які ще міркування потрібно буде врахувати у процесі навчання.
Я сподіваюся, що ви скористаєтеся цими порадами, щоб прискорити та впорядкувати своє навчання Python!
Компанія Ілона Маска xAI презентувала новий онлайн-інструмент під назвою Grok Studio. Він призначений для редагування…
В освітній платформі «Мрія» планують впровадити генератор тестів на основі штучного інтелекту. Про це в…
OpenAI працює над власною X-подібною соціальною мережею, згідно з кількома джерелами, знайомими з цим питанням,…
Команда Unit 42 з Palo Alto Networks помітила чергову активність хакерської групи з КНДР, яка…
Аналітики HBR оприлюднили перелік сфер найчастішого застосування генеративного штучного інтелекту. Цей список складено на основі…
Співробітники Управління кіберполіції НПУ в Київській області викрили організовану злочинну групу, учасники якої отримували віддалений…