The purpose of this repository is to go through each set of exercises sequentially to help you learn python. Once you have finished reading this file you can start from 0. Basic syntax and additional course information
to get the ball rolling.
A video version is also available below:
It is worth mentioning that this course is developed for python 3, as of writing this python 2 is still heavily used. It's not a differenceee that affects most things, but keep it in mind when googling questions.
Why would you ever want to use python?
Python is an incredibly prominent language in the development community, industry and hobbyists. There are many reasons for this, but here are some of the main ones:
-
Python is popular; This means the community of people answering online questions, creating videos, and packages is huge and ever growing.
-
It is fast to develop for; Python makes iterative development incredibly fast, it is short and simple to read + write which makes it ideal for prototyping.
-
Wide range of fields; Python is used in everything from web development, to IoT devices, to the hacking community, to server maintenance/monitoring, to deployment systems etc.
Why not learn java, or rust, or c or (insert language here)?
A: I would never suggest you don't learn many languages (I have learned the ones in this list and a few more), but for beginners python is definitely the most syntactically simple language. This means you can focus on the programming and not the format of the files so much. As opposed to most other languages.
Same project in java vs python
Markdown files (files that end in .md) are intended to be read in a markdown viewer. The easiest way to read the readme's in each folder is to keep https://github.com/Descent098/PYTH-101 open in github and navigate to each folder. Github has a built in markdown viewer that will let you read the files in their intended format right on your webpage. Alternatively you can checkout the course on my website here.
├── 0. Installation and course information
| ├── challenge.py
| ├── exercises.py
| └── readme.md
├── 1. Variables and Data Types
| ├── challenge.py
| ├── exercises.py
| └── readme.md
├── 2. Operators and conditionals
| ├── challenge.py
| ├── exercises.py
| └── readme.md
├── 3. Loops
| ├── challenge.py
| ├── exercises.py
| └── readme.md
├── 4. Functions
| ├── challenge.py
| ├── exercises.py
| └── readme.md
├── 5. Classes
| ├── challenge.py
| ├── exercises.py
| └── readme.md
├── 6. Python Modules
| ├── challenge.py
| ├── exercises.py
| └── readme.md
├── 7. Extras
| ├── challenge.py
| ├── exercises.py
| └── readme.md
Each folder has a number in ascending order, the challenges & exercises are intended to be completed in this order.
Within each folder there are 3 files
Information about the topic, the primary resource for reference to complete the exercises and challenge(s).
A set of smaller exercises that are intended to gear you up for challenge.py
. The exercises are intended to be completed after reading readme.md
A challenge on the topic of the folder, intended to be completed last.
I do also have other courses in python:
+----------+
| PYTH 101 |
+----+-----+
|
|
v
+----+-----+
| PYTH 202 | (Still a work in progress)
+----+-----+
|
|
v
+----+-----+
| PYTH 303 | (Still a work in progress)
+----------+