The Python quick tutorial, which has been written for nearly two years, is finally about to take shape. This series of articles includes the Python Foundation, the standard library, and the Django framework. This article contains the most important parts of Python. This content spans far beyond my expectations, and more than any Python-related book I've ever read. The first reason to write, in addition to the summary, but also many Python books and tutorials feel dissatisfied, too obscure, and not comprehensive. Now, I am more certain, referring to my summary of Linux, network, algorithm, the reader can be in the background without foundation, in a short time, have a deep learning of python.
This one is also the end of the story. Prepare to stop updating the Python quick tutorial for a long time and focus on other aspects. After all, one thing has been done for a long time, it lacks self-breakthrough. Programming is a very innovative, very need to break the self-work. In one respect for a long time, I will feel a sour hair. In the Unknown computer field, there are a lot of interesting technologies that are worth learning more deeply. On the other hand, Python was comfortable, which led me to think of a problem, which was basically a python idea. In this way, Python becomes my comfort zone. I'm too lazy to think about how Java will fix it, how Scala will fix it, and how C will fix it. The space of growth is compressed very little. To break this comfort zone in order to be able to move forward.
Thank you for reading these python articles. Your support is the biggest motivation I have come to this moment. I hope these technical articles will adorn your leisure. It would be best if we could have some concrete help.
Here is a post that I answered, "How do you teach yourself Python", and slightly revise it as a summary:
I'm a self-taught python. There are a number of barriers, but also fun, from knowing nothing about Python to writing a series of Python-related articles on a blog. Fun is the biggest motivation for self-study. Python is an easy-to-write, powerful, dynamic language. With Python, you can achieve pretty powerful functionality in just a few lines. It is the most convenient place to learn python by writing some small programs, quickly seeing the results and discovering problems. In "hackers and painters," Paul also said that dynamic language can give hacker more pleasure in painting. This is my heart.
Before you learn python, learn about Python's features and design concepts (a brief history of Python). At the beginning of the design, Python was trying to find a balance between complex, powerful C and a convenient, limited-functionality bash. Python's syntax is relatively simple and easy to use, so some people use it as a scripting language. But Python is much more powerful than the normal scripting language. With good extensibility, Python's capabilities are quite comprehensive, with a wide range of applications: Web servers, crawlers, scientific computing, machine learning, game development ... Of course, there is no free lunch, there is no perfect language, python in order to achieve the above two points, intentionally sacrificed the speed of Python. If you're writing a high-volume, computational program, Python may not be the best choice.
-----
The main content of Python can be broadly divided into the following sections:
Process oriented. Includes basic expressions, if statements, loops, functions, and so on. If you have a base of any language, especially the C language, this is part of a minute understanding of Python's rules. If you do not have a language base, it is recommended to use Python programming as a reference. This book is an introduction to the nature of computer science textbooks, do not need programming foundation.
Object-oriented, including basic object-oriented concepts, classes, methods, attributes, inheritance and so on. Python is an object-oriented language, "Everything is object." Object-oriented is difficult to avoid. Python's object-oriented mechanism is relatively loose, not as strict as Java and C + +. The benefits are easy to learn, easy to maintain, and the downside is easy to make mistakes.
Application features include IO, data containers such as tables and dictionaries, built-in functions, modules, formatted strings, etc. These are often found in other languages, and have relatively strong practicality.
Advanced syntax, context Manager, list derivation, functional programming, decorators, special methods, etc. These syntaxes are not necessary, and you can do so with the syntax of the previous comparison. The main reason to learn these advanced grammars is that they are too convenient. For example, a list of what can be done in a row, with a loop structure to several lines.
The best reference book for learning Python subjects is learning Python, which is very comprehensive and full of dry goods. Although it is thick, it is not difficult to read. The other is a tutorial on the official website python.org
Python is known as "Battery Included", meaning that functionality is already included in the language. This confidence comes mainly from Python's full-featured standard library. The standard library provides a number of functional modules, each of which is an interface for a feature, such as file management, operating system interaction, character processing, network interfaces, encoding encryption, and so on.
In the Python standard library, you can see a list of standards libraries modules. It is also the best learning material in the standard library. If you want to find a book, I've only seen two books about the standard library:
Python Essential Reference
The Python standard Library by Example
To tell the truth, neither of these are good standard library textbooks, and the reference books of the standard library are indeed very difficult to write. Because the standard library is just an interface that invokes functionality, it ultimately implements Python and system interaction. This requires strong system knowledge, such as file system knowledge, process management, HTTP principles, socket programming, database principles ... If this knowledge is well-prepared, then the standard library is completely non-difficult to learn. However, the learning curve of these background knowledge is far steeper than that of Python itself.
The same goes for deeper Python learning, which requires a lot of background knowledge, not just python itself. If you're interested in Python's extensibility, you can try a lot of mixed programming. If you're interested in Python's build and run mechanics, you can dig into the depths of Python and see what the compiler does. If you're interested in the app, you can learn a few more of your own third-party packages. Learning this time, the spell is the realm, there is no definite method. Vast space to be explored.
Basically, after learning the subject content, Python still has to work on the project to practice. There are many types of exercises, such as Python Cookbook. But the better way is to think of some application scenarios and use Python to solve them. Like what:
Building a website
Make a web crawler
System Management
Python is full-featured, so don't worry about the problem you're thinking Python can't solve (basically python can't solve the problem, other languages will not work). For example, I learn the power of multi-threading, because to parallel download a large number of files. Basically a project down, will be used in Python several pieces of content, knowledge will be particularly consolidated.
Finally, as with any other knowledge, notes and summaries are important. You can make some notes while reading reference books and reading Web pages. After learning for a while, you can organize your notes into a more structured Reference Card (Reference Card), or blog.
http://www.bkjia.com/PHPjc/742265.html www.bkjia.com true http://www.bkjia.com/PHPjc/742265.html techarticle The Python quick tutorial, which has been written for nearly two years, is finally about to take shape. This series of articles includes the Python Foundation, the standard library, and the Django framework. The most important thing about Python ...