Reprint: Http://www.jianshu.com/p/7aa1d7fd08d6
First, learn to use search engines, especially Google. Recommended Reading Articles
How to use the Google search engine well? "Know the answer @ Trikay
"Ten smart Google search skills" by-snow Shadow Blue Wind
"How to use good Google" by-Li Yu
Second, learn to ask questions
Recommended reading "The wisdom of questioning" by-Woodpecker community
Third, the book recommended
0 Basics
Python official documents Click to open the link English is not good, temporarily do not look, after certain must strengthen English study oh;
Recommended "How to think like a computer scientist", corresponding to the Chinese version of the Python learning note-the leather daqing, very suitable for the 0 basic primer.
Recommended [Python Programming practice]
Recommended "Concise Python tutorial"
Recommended "stupid way to learn Python" (learn Python)
There are other programming language basics
Recommended "Basic Python tutorial"
Recommended Python Introductory tutorial-by Liao Xuefeng
Advanced
Recommended requests Source Reading
More books recommended:
Q: What are the classic introductory books on Python?
V2ex Quiz: Liberal arts students want to learn Python
Python Quick Tutorials
Iv. Video Recommendations
Python router cascade. mp4
Course Introduction
This course is intended for students with little or no programming experience, and it is designed to enable students to understand the role of computers in problem solving and to help students, regardless of their profession, to be confident in the goal of completing useful small programs.
V. Methods of Learning
Quiz: 0 Basics, how do I start learning Python? [Email protected] Li Min
Although I am not a Python master, but I am 0 basis, before will be software ps,ppt and so on.
If the goal is to become a programmer, refer to the syllabus.
If just learn the procedure, understand the technology, solve the work problem, my way can refer to use:
Find the right entry books, roughly read once, Cycle Ah judge Ah, common class ah, understand (too difficult to skip)
Do some simple exercises, string comparisons, read dates and the like
"Python Cookbook" is good (too difficult too boring, skip again, keep interest is the most important, will not be able to learn later)
Join the Python discussion group and be friendly and smiling (it is important that the master will be patient to correct your common sense of error).
A lot of small problems, tangled for a long time, the other side of a word on-demand ideas, really save you a lot of times. Patience to teach my good people, super super Thank you.
Solve your own computer problems.
For example, download the American drama, scattered download 2,4,5,8 set, and the United States play a total of 12 episodes, how to find out the missing episodes? Then the problem breaks down, 1 reads the full download file name, 2 extracts the set of numbers, 3 digit sorting and (1--12) contrast, to find out the missing.
Always remember the purpose, not to be a programmer, to solve the problem.
For example, want to lazy grab Web content, with Urllib not, with request also not, only found crawl content involved so many aspects (Cookie,header,ssl,url,javascript and so on), of course, can listen to persuade, go back to Reading, read from the beginning.
Or, do not seek efficiency, only to solve, with IE open the Web page and save as a line? IE has rendered all the results.
The problem becomes: "To open the specified 10 pages (one line of code)." More complicated to want to save it? Using already existing packages, such as PAM30 (mine is Python3), open IE directly, with the function outhtml Save as text, and then use the search function (str search is OK, re is also OK) to find the data. Simple, huh? And the code is super short.
Keep interested, solve the problem in the simplest way, what the bottom drive, all kinds of exchange, leave it to Daniel to write it. We use the existing packages to complete.
Read the document patiently and practise reading the document quickly. Get the new package and find the function you need to read it quickly. This is not difficult, read the function name, presumably can guess what is to do, and then look at the return value, can determine whether you need.
Write Help files and learn notes, and publish shares. When you teach others, you have thought about it once again.
I think the learning process is like learning English, the high-frequency words (loops, judgments, common packages, commonly used functions) to understand, can be assembled into their own desired software.
Then, keep going.
Be sure to keep an interest, too complicated to skip, like elementary school math, primary English, are from Jane into deep.
The network is very flat, countless international Daniel Books, about Python, algorithm, computer, network, or programmer ideas, or business thinking (the Tide is a good book) and so on, as well as the International elite Network Open Class (Chinese and English subtitle translation completed, viewing is not difficult), speaking computer, network, security, or Android system , everything has, as long as can continue to maintain interest, a little learning to go on, is not difficult.
All gifted programmers, once children, return to children's minds to understand and learn. Think what interesting, first learn, do not understand, first put, encounter problems to learn, the effect is better.
The only suggestion is not to be too greedy, to learn an elegant language patiently, and to learn other. Although JavaScript makes special effects very flashy, or ask a question, there are suggestions, using Ruby to write better and so on, do not change direction. Just like the old joke: "To learn recursion, you must first understand recursion." "And then the dead cycle goes on. Insist on learning a language, and then study other.
Even if a language, with the network, database and other related parts, if all can learn, and then learn other languages, it is very quickly.
In addition, learning English with patience to learn computer, English encountered the words do not understand, copy, query.
Python, see HTTP, check the definition, see outhtml, check the definition, as beginners English, do not directly guess the meaning, because the definition of precise description, and vague natural language is different. And the new people guessing, it is easy to mistake understanding, Wiki,google is very useful.
Sesame Quiz: How to learn Python can add QQ group: 619--307--290
How to learn Python
We assume that you are a beginner programmer and only know a little bit of the basics and want to be able to develop with Python. This document is written to meet the above objectives.
Outline
By following the tasks indicated in this document, you will be able to:
Be familiar with the Python language and learn how Python is encoded. Be familiar with the Python library and know how to find the corresponding module when you encounter the development task. Know how to find and get a third-party Python library to cope with development tasks. Learning steps
Install the development environment
If you are under window, go to download pythonxy to install it, then run Python and go to Python to explain the environment.
If you're under Ubuntu, execute: sudo apt-get install python, then run Python under the command line and enter Python to explain the environment.
Learning methods
As a mature developer, my habit of learning new things (assuming PYQT) is:
Search PYQT's official website directly with Google. Follow the official website's instructions to download PYQT. (If you are using Ubuntu to see if there are enough new versions in the Software Library), start reading the tutorials on the official website. While watching the tutorial, follow the tutorial using PYQT. If you find the tutorial is not comprehensive enough, Google search whether there is a corresponding teaching books can be seen. The sample is completed and a toy program is developed to check if you need to use the function. Start learning Python
I suggest that you study the process also follow the above,
If the card is too long, you can look at the answer (Google Python challenge answer) and look at how someone else's coding is different from what you've done.
Small Project
Once you're done, you'll find that you're already familiar with basic python development. Then do some small projects. Here are some topics to choose from that are interesting to do.
Write a simple calculator/bookkeeping software/Minesweeper Game (interface with PYQT library)
Write a chat room site (with the WEBPY framework, jquery refreshes the new reply)
Write a crawler, get Douban all the users above the location of the map location distribution histogram (with lxml analysis, save data to SQLite inside, with Matplotlib drawing)
FAQs
1: Have a problem, where to ask for help?
2: How do I find a feature in Python?
3: How do I complete a task (like writing a website) in Python?
4:google:python Write a Web site, or Google:python Web development.
Question and answer: How did you learn Python by yourself? Can add our group: 619--307--290
Stage One: Seniors lead the door.
At first glance, a predecessor showed me the Python code, because the first thing I learned was the Java language, and when I saw Python at the very beginning, my predecessors said, "Python is Object-oriented," and then it prints a few lines of code. But I can't see where the "object-oriented" is. Predecessors said "In Python, everything is the object", I just a little understanding of the said: "What the original object, is object-oriented", haha.
Stage Two: Start looking at Dive into python, leaning python, and Python Doc.
Because there are many language learning experiences, the preliminary grammar and the use of learning are completed very quickly. Too complex features are gradually mastered in use.
Phase three: Start using Python to do some of your daily work.
such as Python search files, Python batch processing, etc., the most used is the RE module and socket related modules. Write a lot of examples to make yourself more interested in Python and more familiar with it. The most read-through of this time is the "Python Doc" guide. Whether it is a language reference, library reference, demo reference, there is a lot of content to use, content quality is high comparable to JDK.
Stage four: Production on the horse.
Start using Django,flask,tornado to develop some Web applications, write some daily-use toolkits, and more. Gradually improve the design capabilities, and the overall code management capabilities.
Phase five: A more rational allocation of the c,java,python of the various languages of the respective areas of good.
Put the right language in the right place. Although a language can sometimes take care of everything, it is most efficient to solve the right problem with a good language. This is also the "Python's Boulevard to Jane" concept to bring me the help and understanding.
PS: Some of the main methods in the process:
Reading. The basis of learning.
Practice yourself locally. Programming is also to practice the truth.
Data query. Google,stackoverflow and so much attention.
Communication. Various forums on the Python Group, Forum. The first to go to the cu,javaeye, but now seems to be less. Google Group must subscribe.
Learn + Practice + summarize, master the Magic weapon of language.
Vi. Just do It
Having read so much information, haven't you hit the code yet?
Well, one of the best articles, "the two biggest mistakes I've made in learning programming," Click the Open link
Just do it. Hit the code.
Note: This article is compiled from the "Python dimensionless Master" based on Internet data collection.
Vii. Update
Python technology blog, recruiting, open source software, Python Chinese site navigation
How to solve the python problem?
Online video Teaching (English) Codecademy
English Python for Beginners
Python application and practice what is Python? Who's using it? Related tools? @ Wu Qin
Python module learning is equivalent to translating official website documents
For people with other language experience, English: Learn X in y minutes Chinese translation y-minute learn python (translate)
Pycoder's Weekly Chinese translation Description: Article quality is very high
PEP (Python Zen) example Description: Code_stype
Unicode pain must Read
Analysis and understanding of Python 2 and Sublime Text Chinese Unicode encoding problem must read
StackOverflow Python-related answers organize your translations
Python Language summary-Beginner intermediate Advanced Tutorials @crifan Li
Python Guide python best practices English
"Code Nong Weekly" Dry selection (Python article) selected summary
Eight, crawler and analog landing Sina Weibo
Know: How Python crawlers Get started learning
+python Crawler Learning Series Tutorial @ Cia Qingcai Series tutorials, Introduction, actual combat, crawler, advanced
+
Python Analog login Sina meager (using RSA encryption and cookies files)
A simple distributed Sina micro-blogging crawler
Some tips for catching a station with Python crawlers
Some tips for using Python crawler capture: Advanced article
Web crawler Series
Nine, tools
Python-related packages under Windows system
Python Introductory information