-
Notifications
You must be signed in to change notification settings - Fork 69
/
README.md
75 lines (52 loc) · 4.06 KB
/
README.md
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
# Build applications in Python the anti-textbook
| Source | Read online | Watch | Download | Code |
| ----| ---- | ---- | ------ | ------ |
| On [Github](https://github.com/thewhitetulip/build-app-with-python-antitextbook)| Free on [Gitbooks](https://thewhitetulip.gitbook.io/py/) | The [YouTube series](https://www.youtube.com/playlist?list=PL41psiCma00wwvtQyLFMFpzWxUYmSZwZy) | [Leanpub](https://leanpub.com/antitextbookpy/) | On [Github](https://github.com/thewhitetulip/code-build-app-with-python-antitextbook) |
## Who is this tutorial for?
This book is not for a completely noob programmer, it expects _some_ initial programming experience.
## What is this?
It's an easy to understand introduction to the Python programming language which focuses on teaching concepts via examples. The initial chapters explain various concepts and in a later chapter, you will build a command line todo list manager.
The motto of this book is not just teach the language, but to enable you to write tools which you would use in day to day life, like a simple todo list manager, we encourage you to explore the language more after you read the book and start writing tools for your daily usage.
## Why Python?
There are a large number of languages out there and new ones coming out every week, thus, it begs the question _why learn Python_ over X.
Python has the following advantages:
1. Easy to understand syntax. Reads just like English.
1. Huge community.
1. Open source hence millions of packages available.
1. Short time needed for writing code.
A programming language's usability is direct proportion to the size of its community squared, this is because the core team writes the language, but the content(books, podcasts, tutorials, packages, Q&A) surrounding the language is created by the community.
## Which Python?
This guide focuses only on Python3, Python2 is on life support and we do not recommend using it, unless there is an exceptional scenario.
## Writing Style
We have thirteen chapters:
* Each chapter or topic has an associated YouTube screencast.
* Each chapter has concepts explained by an example (can be as stupid as 1+1=2)
* Code that is supposed to run on the Interpreter starts with `>>>` like `>>> not True`.
```Python
>>> not True
False
```
In this case, `>>> not True` is the statement and `False` is the output.
* Code that doesn't start with `>>>` is supposed to be run in a file with the extension .py
* If there is significant code for the chapter, you can find a file in the code repository, please look on the basis of chapters.
## How to use?
* Read the chapters end to end.
* Watch the YouTube screencast, there is a reason why they are free!
* Do NOT search the Internet for things like "how to do X in python", use the documentation.
## Installation
1. Linux and Mac: Use a package manager to install the python3 package.
1. Windows: Download the `.msi` or `.exe` file from https://python.org, run the installer, click on Next Next until it finishes.
1. Android: Install `termux` (https://termux.com/help.html) & run `apt-get install python3` to install python inside it.
1. iOS: Python3 for iOS (not free).
## Background
This tutorial is the culmination of the various Python trainings I have given in the past. There was a lack of a guide which taught programming by building tools without overwhelming the readers, thus, this project got started.
They say that write the book you wish existed in the world. This is a book which I wished existed when I was learning the language.
Please note that I don't profess to be a God at anything, but I do feel that good things happen when a group comes together for one goal.
This is an open source guide and I invite you to contribute.
## Multiversity
This guide is a part of the [Multiversity](https://github.com/thewhitetulip/multiversity) initiative. The aim is to have high quality open source tutorials along with screencasts.
## Contribution
We need your help to become a great guide! All contributions are welcome. Please raise an issue on Github!
##### Links
| [Next](manuscript/01-intro-to-python.md) | [Index](SUMMARY.md)
| ----| ----|