Best Beginner's Guide To Python?

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • The Tao of Spike

    Best Beginner's Guide To Python?

    I've recentlty been getting into programming. I was wondering what
    language to learn first and after asking around I decided on Python.
    I'm about half way through "Non-Programmers Tutorial For Python" By
    Josh Cogliati (http://www.honors.montana.edu/~jjc/easytut/easytut/)
    and I'm wondering where I should go after this. Any help is
    appreciated, thanks.
  • Ben Finney

    #2
    Re: Best Beginner's Guide To Python?

    On 5 Feb 2004 21:48:20 -0800, The Tao of Spike wrote:[color=blue]
    > I've recentlty been getting into programming. I was wondering what
    > language to learn first and after asking around I decided on Python.[/color]

    Welcome. It sounds like you were well advised.
    [color=blue]
    > I'm about half way through "Non-Programmers Tutorial For Python" By
    > Josh Cogliati (http://www.honors.montana.edu/~jjc/easytut/easytut/)
    > and I'm wondering where I should go after this. Any help is
    > appreciated, thanks.[/color]

    <http://www.python.org/topics/learn/>

    Most especially, Python's own tutorial:

    <http://www.python.org/doc/current/tut/>

    --
    \ "The sun never sets on the British Empire. But it rises every |
    `\ morning. The sky must get awfully crowded." -- Steven Wright |
    _o__) |
    Ben Finney <http://bignose.squidly .org/>

    Comment

    • sean

      #3
      Re: Best Beginner's Guide To Python?

      Not exactly sure what you mean by where to go after that.

      Do you mean what language to tackle next? Or what book to read next?

      If you are looking for a good book... look no further than the Oreilly
      series of books on Python. Also, I found the python book by deitel to be a
      pretty good beginning read. As previously mentioned... the python tutorial
      on python.org is a great thing to check out as well.

      Python is a great language that I have picked up very quickly and have grown
      to love it. However it is not like any other language that I have seen in
      two major ways.

      1) Their are no semi-colons at the end of lines --- nice if you haven't
      done any programming, but a little frustrating when you put one on almost
      automatically when writing code.

      2) No use of curly braces {} to group code. This is by far my biggest
      problem with python. I have, on more than one occasion, needed to put some
      code in a loop for testing purposes. In java, c, perl, etc... you write
      your looping statement and throw a couple of braces around the code you want
      it to use. In python, you write your looping statement... but then have to
      indent each line that will be looping. After testing, all indents must then
      be deleted.

      I can deal without the semi-colons, but would love to see implementation of
      curly braces for code grouping.


      "The Tao of Spike" <duffman4287@ao l.com> wrote in message
      news:3b48d777.0 402052148.3cd8e 16c@posting.goo gle.com...[color=blue]
      > I've recentlty been getting into programming. I was wondering what
      > language to learn first and after asking around I decided on Python.
      > I'm about half way through "Non-Programmers Tutorial For Python" By
      > Josh Cogliati (http://www.honors.montana.edu/~jjc/easytut/easytut/)
      > and I'm wondering where I should go after this. Any help is
      > appreciated, thanks.[/color]


      Comment

      • electron

        #4
        Re: Best Beginner's Guide To Python?

        The Tao of Spike wrote:
        [color=blue]
        > I've recentlty been getting into programming. I was wondering what
        > language to learn first and after asking around I decided on Python.
        > I'm about half way through "Non-Programmers Tutorial For Python" By
        > Josh Cogliati (http://www.honors.montana.edu/~jjc/easytut/easytut/)
        > and I'm wondering where I should go after this. Any help is
        > appreciated, thanks.[/color]

        The latest (2nd) edition of Oreilly's "Learning Python",
        ISBN 0596002815, by Mark Lutz and David Ascher is absolutely
        outstanding and much improved over the 1st edition which was also
        good. I own the 1st edition and currently have the 2nd edition
        checked out from my local library. The latter is so good that I
        intend to buy it ASAP.

        Regards

        Comment

        • Nuff Said

          #5
          Re: Best Beginner's Guide To Python?

          On Thu, 05 Feb 2004 21:48:20 -0800, The Tao of Spike wrote:
          [color=blue]
          > I've recentlty been getting into programming. I was wondering what
          > language to learn first and after asking around I decided on Python.
          > I'm about half way through "Non-Programmers Tutorial For Python" By
          > Josh Cogliati (http://www.honors.montana.edu/~jjc/easytut/easytut/)
          > and I'm wondering where I should go after this. Any help is
          > appreciated, thanks.[/color]

          Next, I would recommend to read the official Python tutorial at the
          Python website (http://www.python.org/doc/current/tut/). After that,
          I would not recommend to spend too much money on 'tutorial style' books,
          but to get a decent Python companion (e.g. Python - Essential Reference
          by David M. Beazley) which you can use for the next years.

          (There is so much Python example code on the web that it is not really
          necessary to buy a book for that IMHO.)

          HTH / Nuff


          BTW: Will there be a 3rd edition of David Beazley's book in the
          near future? Any rumors?

          Comment

          • Dirk Hagemann

            #6
            Re: Best Beginner's Guide To Python?

            The Tao of Spike wrote:[color=blue]
            > I've recentlty been getting into programming. I was wondering what
            > language to learn first and after asking around I decided on Python.
            > I'm about half way through "Non-Programmers Tutorial For Python" By
            > Josh Cogliati (http://www.honors.montana.edu/~jjc/easytut/easytut/)
            > and I'm wondering where I should go after this. Any help is
            > appreciated, thanks.[/color]
            I started to lern programming in python simply by PROGRAMMING IN PYTHON.
            I had some things I wanted to be done by a script and I just started to
            write my script. When I had any difficulties I tried to find the
            solution in books or somewhere in the internet.
            May be you should simply start to write more complex scripts or think
            about which special direction you are interested in. Websites?
            Networking (Windows or Linux or..?)? Something else?

            Dirk

            Comment

            • Harry George

              #7
              Re: Best Beginner's Guide To Python?

              "sean" <sean_berry@cox .net> writes:

              [snip][color=blue]
              > 2) No use of curly braces {} to group code. This is by far my biggest
              > problem with python. I have, on more than one occasion, needed to put some
              > code in a loop for testing purposes. In java, c, perl, etc... you write
              > your looping statement and throw a couple of braces around the code you want
              > it to use. In python, you write your looping statement... but then have to
              > indent each line that will be looping. After testing, all indents must then
              > be deleted.
              >[/color]

              When you say you must indent every line and then undent every
              line....are you using an editor that knows how to do a block
              shift-right and shift-left? In emacs, you just grab the code with a
              sweep of the mouse and hit "C-c >" or "C-c <". I haven't timed it,
              but it would be in the neighborhood of (and maybe faster) than
              inserting and deleting curly braces.

              [snip]
              --
              harry.g.george@ boeing.com
              6-6M31 Knowledge Management
              Phone: (425) 342-5601

              Comment

              • Josiah Carlson

                #8
                Re: Best Beginner's Guide To Python?

                > When you say you must indent every line and then undent every[color=blue]
                > line....are you using an editor that knows how to do a block
                > shift-right and shift-left? In emacs, you just grab the code with a
                > sweep of the mouse and hit "C-c >" or "C-c <". I haven't timed it,
                > but it would be in the neighborhood of (and maybe faster) than
                > inserting and deleting curly braces.[/color]

                I've discovered one of the non-minor differences between an editor that
                doesn't care about the user and one that does, is the ability to indent
                and dedent blocks of code. If the parent doesn't have that ability in
                their editor, then the developer honestly doesn't care about the users
                of the editor.

                - Josiah

                Comment

                • Nick Vargish

                  #9
                  Re: Best Beginner's Guide To Python?

                  "sean" <sean_berry@cox .net> writes:
                  [color=blue]
                  > 2) No use of curly braces {} to group code. This is by far my
                  > biggest problem with python. I have, on more than one occasion,
                  > needed to put some code in a loop for testing purposes. In java,
                  > c, perl, etc... you write your looping statement and throw a
                  > couple of braces around the code you want it to use. In python,
                  > you write your looping statement... but then have to indent each
                  > line that will be looping. After testing, all indents must then
                  > be deleted.[/color]

                  This is, of course, a feature of Python.

                  Working with other peoples' C code, I've seen many examples where a
                  block of code was turned into a loop for "testing", and since it
                  worked better, the loop was never removed. Of course, the block never
                  gets indented. Hilarity ensues.

                  Nick

                  --
                  # sigmask || 0.2 || 20030107 || public domain || feed this to a python
                  print reduce(lambda x,y:x+chr(ord(y )-1),' Ojdl!Wbshjti!=o bwAcboefstobudi/psh?')

                  Comment

                  • Kurt B. Kaiser

                    #10
                    Re: Best Beginner's Guide To Python?

                    duffman4287@aol .com (The Tao of Spike) writes:
                    [color=blue]
                    > I've recentlty been getting into programming. I was wondering what
                    > language to learn first and after asking around I decided on Python.
                    > I'm about half way through "Non-Programmers Tutorial For Python" By
                    > Josh Cogliati (http://www.honors.montana.edu/~jjc/easytut/easytut/)
                    > and I'm wondering where I should go after this. Any help is
                    > appreciated, thanks.[/color]

                    There's more to programming than learning a language:

                    How to Think Like a Computer Scientist [in Python]



                    The Python Tutorial is good:

                    The official home of the Python Programming Language


                    I have many Python books. Most are redundant. The one I keep
                    coming back to (because it's thorough and concise) is

                    Python Essential Reference
                    David M. Beazley
                    New Riders

                    but you may like

                    Python in a Nutshell
                    Alex Martelli
                    O'Reilly

                    better because it's more detailed, covers Tkinter and XML, and is
                    updated to Python 2.2. I use both.

                    Those two are more than just reference books, because they include
                    example code for each topic.

                    For an extended (1200 page) introduction, _Programming Python_ is
                    great, as others have recommended.

                    I would stay away from the Deitel book. The code isn't Pythonic.

                    Python is unusual in that its learning curve is a series of
                    plateaus rather than a continuous climb. You can do a lot
                    once you get to that first plateau, which doesn't take long.
                    (The introductory tutorial in Beazley's book is eleven pages.)

                    Read other people's code. Experiment. Code up some project. Repeat.

                    Python was a good choice.

                    --
                    KBK

                    Comment

                    • Wayne Folta

                      #11
                      Re: Best Beginner's Guide To Python?

                      > When you say you must indent every line and then undent every[color=blue]
                      > line....are you using an editor that knows how to do a block
                      > shift-right and shift-left? In emacs, you just grab the code with a[/color]

                      Agreed. Python is more dependent on a reasonable editor than other
                      languages, if only for this feature. Depending on the OS you're using,
                      you may already have such editors. For example, vi (or better vim) is
                      available on all UNIX-based systems. Most IDEs should support block
                      indent/undent as well.

                      Another widely-used editor in MacOS X (if that's what you're using) is
                      BBEdit which also supports this.

                      If nothing else, a reasonable editor also supports syntax coloring
                      which I used to scoff at but now find quite useful.

                      With something like BBEdit, you simply select the lines in question and
                      press CMD-] to indent and CMD-[ to undent. It's faster and more
                      reliable than killing/adding braces at both ends.

                      I also agree with the 2nd ed Learning Python recommendations . I've
                      programmed for over 20 years, so it might be a little hard to tell what
                      a total novice needs, but it is well-written and looks useful for all
                      levels.


                      Comment

                      • Stephen Ferg

                        #12
                        Re: Best Beginner's Guide To Python?

                        You might look at


                        Comment

                        • Dang Griffith

                          #13
                          Re: Best Beginner's Guide To Python?

                          On Thu, 5 Feb 2004 23:25:36 -0800, "sean" <sean_berry@cox .net> wrote:

                          ....[color=blue]
                          >If you are looking for a good book... look no further than the Oreilly
                          >series of books on Python. Also, I found the python book by deitel to be a
                          >pretty good beginning read. As previously mentioned... the python tutorial
                          >on python.org is a great thing to check out as well.[/color]
                          ....
                          Really? I've seen the Dietel C++ and Java books, and did not find
                          them very good. They weigh a ton and have a lot of information, but
                          the index wasn't very good for "random access". Do you (or does
                          anyone else) know if the Python book is better than the C++/Java
                          books?

                          If I've already gone through the OReilly books (except the cookbook)
                          and Dr Mertz' Text Processing, is there much/anything to be gained
                          from the Dietel book?
                          Thanks,
                          --dang

                          Comment

                          Working...