The Python quick tutorial is complete. I wrote a quick tutorial on Python over the past two years, and it finally took shape. This series of articles includes Python basics, standard libraries, and Django frameworks. The previous and later articles include the most important Python quick tutorials written over the past two years, which have finally taken shape. This series of articles includes Python basics, standard libraries, and Django frameworks. The previous and later articles include the most important components of Python. This content spans far beyond my expectation and exceeds any Python-related books I have read. In addition to summary, I was not satisfied with many Python books and tutorials. I felt too obscure and not comprehensive enough. Now, I'm quite sure. refer to my summary on Linux, network, and algorithm. readers can learn Python in a short time without any foundation.
This article is also coming to an end. Prepare to stop updating the Python quick tutorial for a long time and focus on other aspects. After all, if one thing has been done for a long time, there will be a lack of self-breakthrough. Programming is a very innovative job that needs to break through itself. After a long time in one aspect, you will feel the issue. In the unknown computer field, there are still many interesting technologies worth further learning. On the other hand, Python is quite comfortable, and it is basically a Python idea for me to think about the problem. In this way, Python becomes a comfortable area for me. I am too lazy to think about how Java solves it, how Scala solves it, and how C solves it. The space for growth is compressed very small. In order to move forward, we need to break this comfort zone.
Thank you for reading these Python articles. Your support is the greatest motivation for me. I hope these technical articles will embellish your leisure time. If there are more specific help, it would be better.
The following is a post I have answered in Zhihu: "How do you learn Python by yourself?". I will make some modifications as a summary:
I am a self-taught Python. From having no knowledge of Python to writing Python-related articles on a blog, there are many barriers, but they are also fun. Fun is the greatest motivation for self-study. Python is a dynamic language that is easy to write and powerful. With Python, you can implement quite powerful functions in just a few lines. By writing some small programs by yourself, you can quickly see the results and discover problems. this is the most convenient place to learn Python. In Hacker and painter, Paul also said that dynamic language can give hackers more pleasure in painting. This is deep in my heart.
Before learning Python, you can understand the characteristics and design concepts of Python (A Brief History of Python ). At the beginning of the design, Python tried to find a balance between the complex and powerful C and the convenient and functional bash. Python syntax is relatively simple and easy to use, so some people use it as a scripting language. However, Python is much more powerful than normal scripting languages. With excellent scalability, Python features are quite comprehensive and widely used: web servers, web crawlers, scientific computation, machine learning, game development ...... Of course, there is no free lunch or perfect language in the world. to achieve the above two points, Python intentionally sacrifices the speed of running Python. If you are writing a program with high business volume and computing workload, Python may not be the best choice.
-----
The main content of Python can be roughly divided into the following parts:
Process-oriented. Including basic expressions, if statements, loops, and functions. If you have the basics of any language, especially the C language, this part is about learning about Python in minutes. If you do not have a language Foundation, we recommend that you use Python Programming as a reference. This book is an introduction to computer science and does not require the basics of programming.
Object-oriented, including basic object-oriented concepts, classes, methods, attributes, and inheritance. Python is an object-oriented language, "everything is an object ". Object-oriented is hard to avoid. Python's object-oriented mechanism is relatively loose, unlike Java and C ++. The advantage is that it is easy to learn and maintain, and the disadvantage is that it is easy to make mistakes.
Application functions, including IO, data containers such as tables and dictionaries, built-in functions, modules, and formatted strings. These are also frequently used in other languages and have strong practicability.
Advanced syntax, context manager, list derivation, functional programming, decorator, and special methods. These syntaxes are not necessary. you can use the basic syntaxes mentioned above. The main reason for learning these advanced syntaxes is that they are too convenient. For example, if a list can be used to derive a row, it takes several rows to use a loop structure.
The best reference for Learning Python is Learning Python, which is comprehensive and full of knowledge. Although thick, it is not difficult to read. The other is to refer to the tutorial Python.org on the official website.
Python is called "Battery supported Ded". that is to say, all functions are Included in the language. This confidence mainly comes from the standard library with comprehensive Python functions. The standard library provides many functional modules. Each module is a functional interface, such as file management, operating system interaction, character processing, network interfaces, and encoding encryption.
In The Python Standard Library, you can see The list of Standard Library modules. This is also the best learning material for the standard library. If you want to find a book, I only see two articles about the standard library:
Python Essential Reference
The Python Standard Library by Example
To be honest, these two are not very good standard library textbooks, and the reference books of the standard library are indeed difficult to write. Because the standard library only calls the functional interface, the interaction between Python and the system is realized. This requires strong system knowledge, such as file system knowledge, process management, http principles, socket programming, database principles ...... If you have fully prepared the knowledge, it is not difficult to learn the standard library. However, the learning curve of these background knowledge is far more steep than Python itself.
This is also true for more in-depth Python learning, which requires a lot of background knowledge, not just Python itself. If you are interested in developing Python, you can try mixed programming. If you are interested in the compilation and running mechanism of Python, you can dig deep at the bottom layer of Python to see how the compiler works. If you are interested in the application, you can learn more about the third-party packages you use. At this time, there is no way to decide what to fight. A vast space for exploration.
Basically, after learning the subject content, Python still needs to be practiced by project. There are a lot of small exercise type materials, such as Python Cookbook. But the better way is to think about some application scenarios and use Python to solve them. For example:
Build a website
Make a web crawler
System Management
Python is fully functional, so don't worry about the problems you think Python cannot solve (basically, Python cannot solve the problems, and other languages are useless ). For example, I learned the power of multithreading because I want to download a large number of files in parallel. Basically, several pieces of Python content will be used in a project, and the knowledge will be particularly consolidated.
Finally, notes and summaries are important just like learning any other knowledge. You can take notes when reading reference books and webpages. After learning for a while, you can organize your notes into a reference card or write a blog.
Bytes. This series of articles includes Python basics, standard libraries, and Django frameworks. The previous and later articles include the most important Python...