Why do I think Python's learning is disorganized?

Source: Internet
Author: User
I am a high school student. be interested in programming. Recently began to study Python seriously as a language for getting started

I've had some of my previous knowledge of C, but I'm just having some understanding of grammar. The theory of programming is also not known.

Learning Python is based on the book "Basic Python Tutorial", which seems to be very brief, and the 7th chapter is about OOP. I think my thinking is very disorganized, and from the perspective of the OOP chapter began to feel very difficult, for what "magic method" is even more unclear. Learning now, I can simply recursively write a more "complex" Yang Hui Triangle.

Do you know if er can help me?

^_^

Reply content:

MIT Open Course: Introduction to Computer science and programming
Personally think this is the best way to learn Python introductory tutorial, and then look at it, than the domestic book much better.
Look at the second time. Combine learn Python's hard-form to see this book together and start programming at the same time.
First understand the goal and principle of programming is the most important, directly chew the boring books will only erase their interests.
Above, hope to help you. If you decide to work in computer science in the future, I suggest you study scheme.
Read SICP, the little schemer.
These can make you understand why computing is a science, and writing code is not. Just as architecture is a science, and walls are not.

If you just want to be a profitable yard farmer, learn everything the same. So many public classes casually pick a few to see, such as Udacity on the big god Peter Norvig.
And then I'm going to make a few toys and basically get started.

=====
Why do you feel disorganized because you have no experience in this field at all. It's like there's only one flashlight in your hand, but you have to explore a vast expanse of pristine forest, how can you feel organized. People's cognition is based on the existing experience, you always need to compare with your own knowledge, and constantly revise, can expand their cognitive field.

It's hard to understand OOP without developing software, and learning is a process in itself, and you need to be more patient. The other is not to trees not see the woods, dead hold a book not put. There is a lot of better learning resources.

In addition you do not underestimate the recursion, the little schemer the whole book can be regarded as the teaching of what is recursion, how to recursion. Recursion can be counted as the most important concept in the introduction of computer science. To learn about recursive descent parser, you will understand the power and beauty of recursion.

As a high school student, you should set your expectations a little higher. I suggest you go to the programming contest and study the algorithms that will keep you from the yard level in the future. And you can therefore meet a group of the brightest and most capable people in the field in the future.

You have to know that the specific language of the technology may be outdated, but the eternal spirit of the computer and the world forever. Do something about it, score management, library borrowing and lending management, their own music management and so on, constantly re-construction, and constantly add new functions, from single-machine to CS to BS to the cloud. Beginners Strong Answer:
Compared to the introduction of headfirst, actually concise tutorial this book whole! This! are particularly obscure. The Nineth chapter has reached the point where I can't read ... Need to find other books under the control of understanding.
class = A specific data structure + function that processes the data. A Magic method is an override of a method in an inherited class (object or STR, list), including operators, which are common functions. There are also features for access control and custom sequences. So that even seemingly identical functions work on different classes, there can be different results without conflicts. Whenever you create a class, "." Later, you can see the magic method that can be rewritten. In short, the Magic method serves specific data structures. An example.
class Word(str):    '''单词类,按照单词长度来定义比较行为'''        def __init__(self,a_add):str.__init__(self)self.add=a_add    def __gt__(self, other):        return len(self) > len(other)    def __lt__(self, other):        return len(self) < len(other)    def __ge__(self, other):        return len(self) >= len(other)    def __le__(self, other):        return len(self) <= len(other)    def __len__(self):    return len(self.add)+1a=Word('a')b=Word('b')>>> a>=bTrue>>> 'a'>='b'False>>> len(a)2
I say my opinion, since is a beginner, then is three points most important, fun or say accomplishment, organization and structure. Fun Needless to say, self-learning anything the most powerful driving force, but how to maintain the driving force, different teaching materials have different focus, such as I learn Python to see the "Python core programming", for me is very suitable, and later recommended to several people found that the effect is not good, I look back carefully, the entire rigorous, Beginners from this book can not find a little fun, the inevitable pass. So in this regard, you can refer to the "Cute python" article rationality ... Personally, see the book generally if the fun to maintain a very little can be organized, so my personal advice is to learn a language, only read a book is sure and absolutely not enough. So, in this regard, "Python core programming" I am still very recommended. As for the structure, it is from the bigger picture (9 God do not blame). Generally speaking, the book is very few, I have not reached this point, for Python, Pep is a good literature, and then look at other "noble language" such as Lisp, which is slowly accumulated. In addition, a tool dictionary and other books are also necessary, such as "Python standard library example" phone answer, poor typesetting please forgive. #!!!!!! Update the most important thing is to find something to write!! Practice!! Learning Python is a big scope, it is best to find a goal, is to do web site development, or want to do desktop-level application software, or other things, the single grammar of course is very boring, also not organized, it is not possible, but the effect may be nearly, but also easy to forget.

You may have just started or did not get started, basic shallow foundation, some at a loss is the only way, do not worry, as long as adhere to the line.

I am also looking at the basic Python tutorial this book, recently had other things put down, in fact, not you see fast, but some things are similar, to be slow and appropriate, detailed slightly moderate, suggest you first in addition to the project examples of the part probably once, do not want to thoroughly understand, first understand some concepts, set some ideas, and then look at the second, Third time, in-depth understanding, the book on the code more knock, nature is much faster, this book is the most valuable is the following a few project examples, of course, also need some other knowledge, such as the knowledge of web development, database knowledge and so on, you need to expand, you can see head first series of books, get started very well.

In high school can learn programming instructions you have a lot of ideas, I learned a little in high school Pascal on the university to learn other languages are much faster than other students, if in the future you can carry out the relevant professional study, at this time the accumulation is also very valuable.

Come on.

(v classmate Ah, OK, estimate study good ~ ~)
  • Related Article

    Contact Us

    The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

    If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.