On 3 September 2017 at 12:02, Leam Hall <leamh...@gmail.com> wrote: mmend anything from the author of LPTHW after he had the >> audacity to write this https://learnpythonthehardway.org/book/nopython3.html >> about Python 3, in addition to which there are several vastly superior books >> and/or tutorials anyway. >> >> Kindest regards. >> >> Mark Lawrence. > > > There are lots of other books on Python, that's true. "Practical > Programming" (Gries, Campbell, Montojo) is one I use. > > Are you going to toss "Learning Python" since Mark points out some of > python's drift from it's core values? > > I appreciate that link. Zed's right.
Many of Zed’s argument are false and plain BS: https://eev.ee/blog/2016/11/23/a-rebuttal-for-python-3/ > Python 3 isn't used by the OS tools on Red Hat, and that's that major Linux > vendor in the US. This will change in RHEL 8, whenever that comes out: yum was replaced by dnf a few versions of Fedora ago, and that’s written in Python 3. > Anyone that uses python on Linux has to use Python 2. That means Python 3 is > just one more language that requires work to install and maintain. I'm not > seeing the benefits. How long has Python 3 been out? How many others are > seeing the benefits of total change? When will people who say "you should > upgrade" realize it's weeks or months of work with no real reason to do so? You’re getting: sane Unicode support, f"strings", type hinting, pathlib, asyncio, and a few more improvements. > Yesterday I was coding and had to work around Python 3 dict.keys() returning > a "dict_keys" type vs a list. Why did we need another type for this? I'm a > coding beginner. Performance and resource usage. If you use a list, Python needs to do some extra work to convert internal data structures of a dict into a list, and also store that new list in memory. > I can talk a decent game in a few languages like python but > I'm not experienced enough or smart enough to deal with these sorts of > problems easily. Returning a new type, without significant benefit, makes it > harder for people to progress in the language. There are a lot of things that return iterators or other fancy types instead of lists in Python 3 (eg. zip, range, all of itertools). You can always iterate over those like you would, and if you need a list for some reason, you can just call list(the_thing). > Some years ago I wanted to play with an IRC bot sort of thing. Someone on > Freenode #python mentioned Twisted so I got that and started playing. Half > an hour, maybe forty five minutes later and my little project did what I was > trying to do. This was before I really knew any python; the language was > that clean and easy to learn. You can still do that with Python 3. (Although you’ll be better off using asyncio and some IRC lib for that.) -- Chris Warrick <https://chriswarrick.com/> PGP: 5EAAEA16 _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor