Welcome Turk Hack Team Members.
Its possible to learn Python fast. How fast depends on what youd like to accomplish with it, and how much time you can allocate to study and practice Python on a regular basis. Before we dive in further, Id like to establish some assumptions Ive made about you and your reasons for reading this article:
First, Ill address how quickly you should be able to learn Python. If youre interested in learning the fundamentals of Python programming, it could take you as little as two weeks to learn, with routine practice. If youre interested in mastering Python in order to complete complex tasks or projects, or to spur a career change, its going to take much longer. In this article, Ill provide tips and resources geared toward helping you gain Python programming knowledge in a short timeframe.
If youre wondering how much its going to cost to learn Python, the answer there is also, it depends. There is a large selection of free resources available online, not to mention the various books, courses, and platforms that have been published for beginners. More on that in a moment.
Another question you might have is, how hard is it going to be to learn Python? That also depends. If you have any experience programming in another language such as R, Java, or C++, itll probably be easier to learn Python fast than someone who hasnt programmed before. But learning a programming language like Python is similar to learning a natural language, and everyones done that before. Youll start by memorizing basic vocabulary and learning the rules of the language. Over time, youll add new words to your repertoire and test out new ways to use them. Learning Python is no different.
By now youre thinking, OK, this is great. I can learn Python fast, cheap, and easily. Just tell me what to read and point me on my way. Not so fast. Theres a fourth thing you need to consider, and thats how to learn Python. Research on learning has identified that not all people learn the same way. Some learn best by reading, while others learn best by seeing and hearing. Some people enjoy learning through games rather than courses or lectures. As you review the curated list of resources below, consider your own learning preferences as you evaluate options.
Now lets dig in. Below are my eight tips to help you learn Python fast.
1. COVER THE FOLLOWING PYTHON FUNDAMENTALS.
At a bare minimum, you (and your resource) must cover the fundamentals. Without understanding them, youll have a hard time working through complex problems, projects or use cases. Examples of Python fundamentals include:
If youre really pressed for time, all of these fundamentals can be quickly explored on a number of different websites: docs.python.org, RealPython.org, stavros.io, developers.google.com, pythonforbeginners.org. See the section below on Websites for more details.
2. ESTABLISH A GOAL FOR YOUR STUDY.
Before you start learning Python, establish a goal for your study. The challenges you face as you start learning will be easier to overcome when you keep your goal in mind. Additionally, youll know what learning material to focus on or skim through as it pertains to your goals. For example, if youre interested in learning Python for data analysis, youre going to want to complete exercises, write functions, and learn Python libraries that facilitate data analysis. The following are typical examples of goals for Python that might pertain to you:
3. SELECT A RESOURCE (OR RESOURCES) FOR LEARNING PYTHON FAST.
Python resources can be grouped into three main categories: interactive resources, non-interactive resources, and video resources. In-person courses are also an option, but wont be covered in this post.
Interactive resources have become common in recent years through the popularization of interactive online courses that provide practical coding challenges and explanations. If it feels like youre coding, thats because you actually are. Interactive resources are typically available for free or a nominal fee, or you can sign up for a free trial before you buy.
Non-interactive resources are your most traditional and time-tested; theyre books (digital and paperback) and websites (online tutorials). Many first-time Python learners prefer them due to the familiar and convenient nature of these mediums. As youll see, there are many non-interactive resources for you to choose from, and most are free.
Video resources were popularized over the past 10 years by MOOCs (massive online open courses) and resembled university lectures captured on video. In fact, they were often supported or promoted by leading universities. Now, theres an abundance of video resources for various subjects, including programming in Python. Some of these video resources are pre-recorded courses hosted on learning platforms, and others are live-streamed courses provided by online education providers. General Assembly produces a live course in Python that covers Python fundamentals in one week.
Below Ive compiled a list of resources to help you get a jumpstart on learning Python fast. They fall into the categories laid out above, and at a bare minimum they cover Python basics. Throughout the list, Ive indicated with an asterisk (*) which resources are free, to the best of my knowledge.
Interactive Resources: Tools and Lessons
CodeAcademy: One the more popular online interactive platforms for learning Python fast. I know many Python programmers, myself included, who have taken CodeAcademys Python fundamentals course. Its great for beginners, and you can knock it out in a week. It will get you excited about programming in Python.
DataCamp: Short expert videos with immediate hands-on-keyboard exercises. Its on-par with the CodeAcademy courses.
*PythonTutor.com: A tool that helps you write and visualize code step by step. I recommend pairing this tool with another learning resource. This tool makes learning Python fundamentals a lot easier because you can visualize what your code is doing.
Non-Interactive Resources
Non-interactive resources fall into two sub-categories: books and websites.
Books
In researching books, I noticed a majority of them were actually catered to existing programmers interested in learning Python, or experienced Python programmers looking for reliable reference material (cookbooks) or specialized literature. Below, Ive listed only the books I think are helpful for beginners.
Introducing Python, 2nd Edition: This book mixes tutorials with cookbook-style code recipes to explain fundamental concepts in Python 3.
Learn Python 3 The Hard Way: 52 well-developed exercises for beginners to learn Python.
Python Basics: A Practical Introduction to Python 3: The website says it all this book is designed to take you from beginner to intermediate.
Python Crash Course, 2nd Edition: This book provides a foundation in general programming concepts, Python fundamentals, and problem solving through real-world projects.
Websites
At first, my list started off with over 20 examples of websites covering Python fundamentals. Instead of sharing them all, I decided to only include ones that had a clear advantage in terms of convenience or curriculum. All of these resources are free.
*You can start with reading python tutorials on Turkhackteam forum, available in International Forum Python section.
*Googles Python Class: Tutorials, videos, and programming exercises in Python for beginners, from a Python-friendly company.
*Hitchhikers Guide to Python: This guide helps you learn and improve your Python code and also teaches you how to set up your coding environment. The site search is incredibly effective at helping you find what you need. I cant recommend this site enough.
*Python for Everybody: An online book that provides Python learning instruction for those interested in solving data analysis problems. Available in PDF format in Spanish, Italian, Portuguese, and Chinese.
*Python For You and Me: An online book that covers beginner and advanced topics in Python, in addition to introducing a popular Python framework for web applications.
*Python.org: The official Python documéntation. The site also provides a beginners guide, a Python glossary, setup guides, and how-tos.
*Programiz in Python: Programiz has a lengthy tutorial on Python fundamentals thats really well done. It shouldnt be free, but it is.
*RealPython.com: A large collection of specialized Python tutorials, most come with video demonstrations.
*Sololearn: 92 chapters and 275 related quizzes and several projects covering Python fundamentals that can also be accessed through a mobile app.
*Tutorialspoint.com: A no-frills tutorial covering Python basics.
*W3Schools for Python: Another no-nonsense tutorial from a respected web-developer resource.
Video Resources
Video resources have become increasingly popular, and with good reason: theyre convenient. Why read a textbook or tutorial when you can cover the same material in video format on your computer or mobile device? They fall into two sub-categories, pre-recorded video-courses, and live video courses.
Pre-Recorded Courses
Coursera: A large catalog of popular courses in Python for all levels. Most courses can be taken free, and paid courses come with certifications. You can also view courses on their mobile app.
EdX: Hosts university courses that focus on specific use cases for Python (data science, game development, AI) but also cover programming basics. EdX also has a mobile app.
Pluralsight: A catalog of videos covering Python fundamentals, as well as specialized topics like machine learning in Python.
RealyPython.com: A collection of pre-recorded videos on Python fundamentals for beginners.
*TreeHouse: A library of videos of Python basics and intermediate material.
EvantoTutsPlus: 7.6 hours of pre-recorded videos on Python fundamentals, plus some intermediate content.
*Udacity: Provides a 5-week course on Python basics. Also covers popular modules in the Python Standard Library and other third-party libraries.
Udemy: A library of popular Python courses for learners of all levels. Its hard to single out a specific course. I recommend previewing multiple beginner Python courses until you find the one you like most. You can also view courses on their mobile app.
Live Courses
General Assembly: This live online course from General Assembly takes all of the guesswork out of learning Python. With General Assembly, you have a curated and comprehensive Python curriculum, a live instructor and TA, and a network of peers and alumni you can connect with during and after the course.
4. CONSIDER LEARNING A PYTHON LIBRARY.
In addition to learning Python, its beneficial to learn one or two Python libraries. Libraries are collections of specialized functions that serve as accelerators. Without them, youd have to write your own code to complete specialized tasks. For example, Pandas is a very popular library for manipulating tabular data. Numpy helps in performing mathematical and logical operations on arrays. Covering libraries would require another post for now, review this Python.org page on standard Python libraries, and this GitHub page on additional libraries.
5. SPEED UP THE PYTHON INSTALLATION PROCESS WITH ANACONDA.
You can go through the trouble of downloading the Python installer from the Python Software Foundation website, and then sourcing and downloading additional libraries, or you can download the Anaconda installer, which already comes with many of the packages youll routinely use, especially if you plan on using Python for data analysis or data science.
6. SELECT AND INSTALL AN IDE.
Youll want to install an integrated development environment (IDE), which is an application that lets you script, test, and run code in Python.
When it comes to IDEs, the right one is the one that you enjoy using the most. According to various sources, the most popular Python IDEs/text editors are PyCharm, Spyder, Jupyter Notebook, Visual Studio, Atom, and Sublime. First, the good news: theyre all free, so try out a couple before you settle on one. Next, the bad news: each IDE/text editor has a slightly different user interface and set of features, so it will take a bit of time to learn how to use each one.
For Python first-timers, I recommend coding in Jupyter Notebook. It has a simple design and a streamlined set of capabilities that wont distract and will make it easy to practice and prototype in Python. It also comes with a dedicated display for dataframes and plots. If you download Anaconda, Jupyter Notebook comes pre-installed. Over time, I encourage you to try other IDEs that are better suited for development (Pycharm) or data science (Rodeo) and allow integrations (Sublime).
Additionally, consider installing an error-handler or autocompleter to complement your IDE, especially if you end up working on lengthy projects. It will point out mistakes and help you write code quicker. Kite is a good option, plus its free and integrates with most IDEs.
7. WHEN IN DOUBT, USE GOOGLE TO TROUBLESHOOT CODE.
As you work on Python exercises, examples, and projects, one of the simplest ways to troubleshoot errors will be to learn from other Python developers. Just run a quick internet search and include keywords about your error. For example, how to combine two lists in Python or Python how to convert to datetime are perfectly acceptable searches to run, and will lead you to a few popular community-based forums such as StackOverFlow, Stack Exchange, Quora, Programiz, and GeeksforGeeks.
8. SCHEDULE YOUR PYTHON LEARNING AND STICK TO IT.
This is the part that most people skip, which results in setbacks or delays. Now, all you have left is to set up a schedule. I recommend that you establish a two-week schedule at a minimum to space out your studying and ensure you give yourself enough time to adequately review the Python fundamentals, practice coding in your IDE, and troubleshooting code. Part of the challenge (and fun) of learning Python or any programming language is troubleshooting errors. After your first two weeks, youll be amazed at how far youve come, and youll have enough practice under your belt to continue learning the more advanced material provided by your chosen resource.
CONCLUDING THOUGHTS
By this point, weve established a minimum learning timeline, you know to select a goal for your study, you have a list of learning resources to choose from, and you know what other coding considerations youll need to make. We hope you make the most of these tips to accelerate your Python learning!
//Quoted. Thanks for reading.
Its possible to learn Python fast. How fast depends on what youd like to accomplish with it, and how much time you can allocate to study and practice Python on a regular basis. Before we dive in further, Id like to establish some assumptions Ive made about you and your reasons for reading this article:
- You have little to no prior experience learning Python.
- You want to know how long its going to take to learn Python.
- Youre interested in resources and strategies for learning Python.
First, Ill address how quickly you should be able to learn Python. If youre interested in learning the fundamentals of Python programming, it could take you as little as two weeks to learn, with routine practice. If youre interested in mastering Python in order to complete complex tasks or projects, or to spur a career change, its going to take much longer. In this article, Ill provide tips and resources geared toward helping you gain Python programming knowledge in a short timeframe.
If youre wondering how much its going to cost to learn Python, the answer there is also, it depends. There is a large selection of free resources available online, not to mention the various books, courses, and platforms that have been published for beginners. More on that in a moment.
Another question you might have is, how hard is it going to be to learn Python? That also depends. If you have any experience programming in another language such as R, Java, or C++, itll probably be easier to learn Python fast than someone who hasnt programmed before. But learning a programming language like Python is similar to learning a natural language, and everyones done that before. Youll start by memorizing basic vocabulary and learning the rules of the language. Over time, youll add new words to your repertoire and test out new ways to use them. Learning Python is no different.
By now youre thinking, OK, this is great. I can learn Python fast, cheap, and easily. Just tell me what to read and point me on my way. Not so fast. Theres a fourth thing you need to consider, and thats how to learn Python. Research on learning has identified that not all people learn the same way. Some learn best by reading, while others learn best by seeing and hearing. Some people enjoy learning through games rather than courses or lectures. As you review the curated list of resources below, consider your own learning preferences as you evaluate options.
Now lets dig in. Below are my eight tips to help you learn Python fast.
1. COVER THE FOLLOWING PYTHON FUNDAMENTALS.
At a bare minimum, you (and your resource) must cover the fundamentals. Without understanding them, youll have a hard time working through complex problems, projects or use cases. Examples of Python fundamentals include:
- Variables and Types
- Lists, Dictionaries, and Sets
- Basic Operators
- String Formatting
- Basic String Operations
- Conditions
- Loops
- Functions
- List Comprehensions
- Classes and Objects
If youre really pressed for time, all of these fundamentals can be quickly explored on a number of different websites: docs.python.org, RealPython.org, stavros.io, developers.google.com, pythonforbeginners.org. See the section below on Websites for more details.
2. ESTABLISH A GOAL FOR YOUR STUDY.
Before you start learning Python, establish a goal for your study. The challenges you face as you start learning will be easier to overcome when you keep your goal in mind. Additionally, youll know what learning material to focus on or skim through as it pertains to your goals. For example, if youre interested in learning Python for data analysis, youre going to want to complete exercises, write functions, and learn Python libraries that facilitate data analysis. The following are typical examples of goals for Python that might pertain to you:
- Data analysis
- Data science and machine learning
- Mobile apps
- Website development
- Work automation
3. SELECT A RESOURCE (OR RESOURCES) FOR LEARNING PYTHON FAST.
Python resources can be grouped into three main categories: interactive resources, non-interactive resources, and video resources. In-person courses are also an option, but wont be covered in this post.
Interactive resources have become common in recent years through the popularization of interactive online courses that provide practical coding challenges and explanations. If it feels like youre coding, thats because you actually are. Interactive resources are typically available for free or a nominal fee, or you can sign up for a free trial before you buy.
Non-interactive resources are your most traditional and time-tested; theyre books (digital and paperback) and websites (online tutorials). Many first-time Python learners prefer them due to the familiar and convenient nature of these mediums. As youll see, there are many non-interactive resources for you to choose from, and most are free.
Video resources were popularized over the past 10 years by MOOCs (massive online open courses) and resembled university lectures captured on video. In fact, they were often supported or promoted by leading universities. Now, theres an abundance of video resources for various subjects, including programming in Python. Some of these video resources are pre-recorded courses hosted on learning platforms, and others are live-streamed courses provided by online education providers. General Assembly produces a live course in Python that covers Python fundamentals in one week.
Below Ive compiled a list of resources to help you get a jumpstart on learning Python fast. They fall into the categories laid out above, and at a bare minimum they cover Python basics. Throughout the list, Ive indicated with an asterisk (*) which resources are free, to the best of my knowledge.
Interactive Resources: Tools and Lessons
CodeAcademy: One the more popular online interactive platforms for learning Python fast. I know many Python programmers, myself included, who have taken CodeAcademys Python fundamentals course. Its great for beginners, and you can knock it out in a week. It will get you excited about programming in Python.
DataCamp: Short expert videos with immediate hands-on-keyboard exercises. Its on-par with the CodeAcademy courses.
*PythonTutor.com: A tool that helps you write and visualize code step by step. I recommend pairing this tool with another learning resource. This tool makes learning Python fundamentals a lot easier because you can visualize what your code is doing.
Non-Interactive Resources
Non-interactive resources fall into two sub-categories: books and websites.
Books
In researching books, I noticed a majority of them were actually catered to existing programmers interested in learning Python, or experienced Python programmers looking for reliable reference material (cookbooks) or specialized literature. Below, Ive listed only the books I think are helpful for beginners.
Introducing Python, 2nd Edition: This book mixes tutorials with cookbook-style code recipes to explain fundamental concepts in Python 3.
Learn Python 3 The Hard Way: 52 well-developed exercises for beginners to learn Python.
Python Basics: A Practical Introduction to Python 3: The website says it all this book is designed to take you from beginner to intermediate.
Python Crash Course, 2nd Edition: This book provides a foundation in general programming concepts, Python fundamentals, and problem solving through real-world projects.
Websites
At first, my list started off with over 20 examples of websites covering Python fundamentals. Instead of sharing them all, I decided to only include ones that had a clear advantage in terms of convenience or curriculum. All of these resources are free.
*You can start with reading python tutorials on Turkhackteam forum, available in International Forum Python section.
*Googles Python Class: Tutorials, videos, and programming exercises in Python for beginners, from a Python-friendly company.
*Hitchhikers Guide to Python: This guide helps you learn and improve your Python code and also teaches you how to set up your coding environment. The site search is incredibly effective at helping you find what you need. I cant recommend this site enough.
*Python for Everybody: An online book that provides Python learning instruction for those interested in solving data analysis problems. Available in PDF format in Spanish, Italian, Portuguese, and Chinese.
*Python For You and Me: An online book that covers beginner and advanced topics in Python, in addition to introducing a popular Python framework for web applications.
*Python.org: The official Python documéntation. The site also provides a beginners guide, a Python glossary, setup guides, and how-tos.
*Programiz in Python: Programiz has a lengthy tutorial on Python fundamentals thats really well done. It shouldnt be free, but it is.
*RealPython.com: A large collection of specialized Python tutorials, most come with video demonstrations.
*Sololearn: 92 chapters and 275 related quizzes and several projects covering Python fundamentals that can also be accessed through a mobile app.
*Tutorialspoint.com: A no-frills tutorial covering Python basics.
*W3Schools for Python: Another no-nonsense tutorial from a respected web-developer resource.
Video Resources
Video resources have become increasingly popular, and with good reason: theyre convenient. Why read a textbook or tutorial when you can cover the same material in video format on your computer or mobile device? They fall into two sub-categories, pre-recorded video-courses, and live video courses.
Pre-Recorded Courses
Coursera: A large catalog of popular courses in Python for all levels. Most courses can be taken free, and paid courses come with certifications. You can also view courses on their mobile app.
EdX: Hosts university courses that focus on specific use cases for Python (data science, game development, AI) but also cover programming basics. EdX also has a mobile app.
Pluralsight: A catalog of videos covering Python fundamentals, as well as specialized topics like machine learning in Python.
RealyPython.com: A collection of pre-recorded videos on Python fundamentals for beginners.
*TreeHouse: A library of videos of Python basics and intermediate material.
EvantoTutsPlus: 7.6 hours of pre-recorded videos on Python fundamentals, plus some intermediate content.
*Udacity: Provides a 5-week course on Python basics. Also covers popular modules in the Python Standard Library and other third-party libraries.
Udemy: A library of popular Python courses for learners of all levels. Its hard to single out a specific course. I recommend previewing multiple beginner Python courses until you find the one you like most. You can also view courses on their mobile app.
Live Courses
General Assembly: This live online course from General Assembly takes all of the guesswork out of learning Python. With General Assembly, you have a curated and comprehensive Python curriculum, a live instructor and TA, and a network of peers and alumni you can connect with during and after the course.
4. CONSIDER LEARNING A PYTHON LIBRARY.
In addition to learning Python, its beneficial to learn one or two Python libraries. Libraries are collections of specialized functions that serve as accelerators. Without them, youd have to write your own code to complete specialized tasks. For example, Pandas is a very popular library for manipulating tabular data. Numpy helps in performing mathematical and logical operations on arrays. Covering libraries would require another post for now, review this Python.org page on standard Python libraries, and this GitHub page on additional libraries.
5. SPEED UP THE PYTHON INSTALLATION PROCESS WITH ANACONDA.
You can go through the trouble of downloading the Python installer from the Python Software Foundation website, and then sourcing and downloading additional libraries, or you can download the Anaconda installer, which already comes with many of the packages youll routinely use, especially if you plan on using Python for data analysis or data science.
6. SELECT AND INSTALL AN IDE.
Youll want to install an integrated development environment (IDE), which is an application that lets you script, test, and run code in Python.
When it comes to IDEs, the right one is the one that you enjoy using the most. According to various sources, the most popular Python IDEs/text editors are PyCharm, Spyder, Jupyter Notebook, Visual Studio, Atom, and Sublime. First, the good news: theyre all free, so try out a couple before you settle on one. Next, the bad news: each IDE/text editor has a slightly different user interface and set of features, so it will take a bit of time to learn how to use each one.
For Python first-timers, I recommend coding in Jupyter Notebook. It has a simple design and a streamlined set of capabilities that wont distract and will make it easy to practice and prototype in Python. It also comes with a dedicated display for dataframes and plots. If you download Anaconda, Jupyter Notebook comes pre-installed. Over time, I encourage you to try other IDEs that are better suited for development (Pycharm) or data science (Rodeo) and allow integrations (Sublime).
Additionally, consider installing an error-handler or autocompleter to complement your IDE, especially if you end up working on lengthy projects. It will point out mistakes and help you write code quicker. Kite is a good option, plus its free and integrates with most IDEs.
7. WHEN IN DOUBT, USE GOOGLE TO TROUBLESHOOT CODE.
As you work on Python exercises, examples, and projects, one of the simplest ways to troubleshoot errors will be to learn from other Python developers. Just run a quick internet search and include keywords about your error. For example, how to combine two lists in Python or Python how to convert to datetime are perfectly acceptable searches to run, and will lead you to a few popular community-based forums such as StackOverFlow, Stack Exchange, Quora, Programiz, and GeeksforGeeks.
8. SCHEDULE YOUR PYTHON LEARNING AND STICK TO IT.
This is the part that most people skip, which results in setbacks or delays. Now, all you have left is to set up a schedule. I recommend that you establish a two-week schedule at a minimum to space out your studying and ensure you give yourself enough time to adequately review the Python fundamentals, practice coding in your IDE, and troubleshooting code. Part of the challenge (and fun) of learning Python or any programming language is troubleshooting errors. After your first two weeks, youll be amazed at how far youve come, and youll have enough practice under your belt to continue learning the more advanced material provided by your chosen resource.
CONCLUDING THOUGHTS
By this point, weve established a minimum learning timeline, you know to select a goal for your study, you have a list of learning resources to choose from, and you know what other coding considerations youll need to make. We hope you make the most of these tips to accelerate your Python learning!
//Quoted. Thanks for reading.