Announcement

Collapse
No announcement yet.

Python 3.4 Is Now Available With New Features

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Python 3.4 Is Now Available With New Features

    Phoronix: Python 3.4 Is Now Available With New Features

    Python 3.4.0 is now available as the latest major update to the popular programming language...

    http://www.phoronix.com/vr.php?view=MTYzMjU

  • #2
    It's a while since I looked at Python. Is everyone still ignoring the version 3.x branch in favour of writing 2.x version code because thet can't be bothered to update their code or because of modules that only support 2.x?

    When I looked at it I remember wanting to query a Mysql database, but the module only existed for 2.x, and I had no interest in writing for an outgoing version. But it turns out it wasn't outgoing. The old version is still limping on.

    I just stick to Perl now.

    Comment


    • #3
      Originally posted by kaprikawn View Post
      It's a while since I looked at Python. Is everyone still ignoring the version 3.x branch in favour of writing 2.x version code because thet can't be bothered to update their code or because of modules that only support 2.x?

      When I looked at it I remember wanting to query a Mysql database, but the module only existed for 2.x, and I had no interest in writing for an outgoing version. But it turns out it wasn't outgoing. The old version is still limping on.

      I just stick to Perl now.
      It's sadly true, I am writing a Flask based backend and at the moment, 3.x branch of Flask is still WIP. But I am pretty assured that 2.x branch will stay atleast for 4-5 years down the line because of the massive number of libraries that support 2.x exclusively. I recon that the latest bugfix release for Python 2.x was done pretty recently

      Comment


      • #4
        Originally posted by kaprikawn View Post
        It's a while since I looked at Python. Is everyone still ignoring the version 3.x branch in favour of writing 2.x version code because thet can't be bothered to update their code or because of modules that only support 2.x?
        Yeah, pretty much, which is unfortunate - Python 3 has some seriously important features, most notably the consistent use of unicode strings internally (Python 2 supported unicode types, but you'd end up doing charset conversions every time you called a library function).

        Comment


        • #5
          Originally posted by kaprikawn View Post
          It's a while since I looked at Python. Is everyone still ignoring the version 3.x branch in favour of writing 2.x version code because thet can't be bothered to update their code or because of modules that only support 2.x?
          I use 3.x whenever I can, but inevitably it only gets used for small scripts. Bigger projects that use wxWidgets for example are still stuck at 2.7.

          Comment


          • #6
            Originally posted by shaurz View Post
            I use 3.x whenever I can, but inevitably it only gets used for small scripts. Bigger projects that use wxWidgets for example are still stuck at 2.7.
            This is a bit OT: but why don't use pyqt?

            Comment


            • #7
              Originally posted by Thaodan View Post
              This is a bit OT: but why don't use pyqt?
              If only it was that easy! I'm not going to re-write large projects in Qt. And I use it in my day job too on a product with 375,000 lines of Python and 4+ years of investment in the codebase.

              Comment


              • #8
                Originally posted by shaurz View Post
                If only it was that easy! I'm not going to re-write large projects in Qt. And I use it in my day job too on a product with 375,000 lines of Python and 4+ years of investment in the codebase.
                Ok this is a large valid point but for new projects?

                Comment


                • #9
                  Originally posted by shaurz View Post
                  If only it was that easy! I'm not going to re-write large projects in Qt. And I use it in my day job too on a product with 375,000 lines of Python and 4+ years of investment in the codebase.
                  This is what keeps me from switching to pyqt as well. It would make some of my work - especially packaging of windows ports - easier and cleaner, but redoing and retesting the (non-trivial) UIs of several pieces of software is just too much of an investment. I will definitely take Qt into consideration the next time we start a new cross-platform project with a desktop application component. For Linux-only software I'll probably be sticking to pygtk simply because I like working with it.

                  Comment


                  • #10
                    Originally posted by Thaodan View Post
                    Ok this is a large valid point but for new projects?
                    Yes I guess for new projects it's probably a better option. Qt is probably better then wx in hindsight but at the time there were licensing issues (this was before PySide existed).

                    Comment


                    • #11
                      Originally posted by kaprikawn View Post
                      I just stick to Perl now.
                      Yes, because Perl6 has been such an easy migration.

                      Comment


                      • #12
                        I personally use python 3 regularly, along with Qt5 and a few other libraries. I'm pretty indifferent about the usage of each, and I simply don't care about the libraries that don't work in python 3. Considering most of the important libraries have already made the switch, I'd suggest other developers to move to 3 when they get the chance.

                        Also, it's surprisingly easy to switch. I had roughly 3000 lines of code written in python 2 and only had to change maybe 10 lines to make it work in python 3.

                        So far the only thing I don't like about python 3 is it seems a lot more picky about string encoding, where even C is sometimes simpler.

                        Comment


                        • #13
                          Originally posted by schmidtbag View Post
                          So far the only thing I don't like about python 3 is it seems a lot more picky about string encoding, where even C is sometimes simpler.
                          My experience is that Python 3 makes working with strings and encodings simpler. While you can find the rare case where every string being unicode can make things more difficult, for most purposes this is an improvement over Python 2.

                          Comment


                          • #14
                            At work we have around three web apps using Python 3 already (from 3.3 up). Only the last one started on Python 3.3, and the first two were ported to this version. That required some noticeable amount of pull requests to packages found in the requirements (but usually it was like exception syntax, or print - fixable in few lines). Some more complex apps/libraries are still Python 2 only so not everything can work with 3.X yet.

                            Comment


                            • #15
                              Originally posted by tuubi View Post
                              My experience is that Python 3 makes working with strings and encodings simpler. While you can find the rare case where every string being unicode can make things more difficult, for most purposes this is an improvement over Python 2.
                              Yes, encoding/decoding may be simpler, but in python 2 you rarely had the need to even deal with encoding in the first place. Regardless, it isn't really a big deal to me, just a little tedious at times (in comparison).

                              Comment

                              Working...
                              X