how to see what version of python i have
4 things I desire to see in Python iv.0
Python is iii things, a language, a standard library and an execution engine. Python 4.0 will be the next major release after three.vii. The language doesn't need any new operators or yet-another-way-of-formatting-strings, IMHO. JIT or Merely-In-Time compilation is a method of compiling the byte-codes as they happen, instead of all at one time. Pyjion API was added in three.6, but we're however to see an implementation of the API.
CPython 3.6 is out, 3.7 branches are all setup and CPython is now on GitHub. Exciting times for the Python community.
Python ii.seven was the concluding release of the 2.x series, so by Sir Bedevere logic, Python 4.0 volition be the next major release after 3.7.
'All wood burns,' states Sir Bedevere. 'Therefore,' he concludes, 'all that burns is forest.'
OK, and so that is totally illogical, but if 4.0 were to come up out soon- which features would you want to run into?
Before we start the list, it's important to remind ourselves what is in the CPython projection. Python is iii things, a language, a standard library and an execution engine. Compare that with JavaScript, which is just a language. It has no standard library, and the Google v8 engine does the execution, along with many other options.
Hither's my laundry list, it consists of mainly changes to the execution engine component of CPython, (aka the "runtime"). I believe that the standard library is characteristic packed and anything not found in the standard library is readily institute on PyPi. The linguistic communication doesn't demand any new operators or yet-another-style-of-formatting-strings, IMHO.
1. JIT as a first form feature
JIT or But-In-Time compilation, is a method of compiling the byte-codes every bit they happen, instead of all at once. It can atomic number 82 to meliorate performance, depending on the scenario.
PyPy is an implementation of Python with its own JIT, Pyston is an implementation of Python using LLVM as a JIT compiler. Each of these compromises on functionality (or definiteness of the linguistic communication) over speed.
Having a first-grade JIT plugin compages for CPython would bridge the performance and compatibility needs together and efforts spent on PyPy, Numba etc could exist directed into the main CPython ecosystem.
The good news? This is already accustomed equally PEP-523, thanks to core developer Brett Cannon and his Microsoft colleague Dino Viehland. The API was added in 3.half-dozen, but nosotros're even so to meet an implementation out there of the API. The Pyjion project still needs updates.
2. A stable .0 release
Python 3 release history
Python 3.0 — December 3, 2008
- Python 3.i — June 27, 2009
- Python 3.ii — February xx, 2011
- Python iii.3 — September 29, 2012
- Python 3.4 — March 16, 2014
- Python iii.5 — September thirteen, 2015
- Python 3.six — December 23, 2016
Python 3 has been out for ix years, simply for the showtime 2 versions (iii.0, 3.i) in that location were a number of serious bugs and security issues. Python three.3 was the first release of the 3.x serial to include fast decimal
types, virtualenv equally a core role and namespace package support.
Today, most major packages on PyPi that support "Python 3", similar requests
back up >3.3. The early adopters that tried Python iii betwixt 2008 and 2012, may accept walked abroad with the perception that it isn't ready. Information technology'southward not possible to set first impressions twice.
My biggest enquire for four, is that four.0 is a major operation release, non an experimental release.
iii. Static blazon hinting
Anyone post-obit the Mypy projection will take seen the BDFL's involvement and endorsement, but Mypy is a optional static type hinter for Python.
Mypy aims to combine the benefits of dynamic (or "duck") typing and static typing.
def fib(n: int) -> Iterator[int]:
a, b = 0, 1
while a < n:
yield a
a, b = b, a+b
I would like to run across this in Python iv.0, because with more and more data being consumed from REST-ful services in JSON, libraries like schema tin be hugely useful in blazon-checking inputs.
4. A GPU story for multiprocessing
Using PyOpenCL and the multiprocessing
library in 3.6 (and below) you lot tin leverage the ability of GPU processing for highly parallel computation. For Python to cement its position as the data science, machine learning King, native support for GPU parallel processing would be awesome.
Check out NumbaPro, which uses a seperate JIT engine for compilation to parallel-native threading just information technology's specific to NumPy. Forth with the PEP523 (JIT) support, a native compilation module could use CPython to have parallel execution in GPUs, of of the box.
five. More community contributions
Ok, I said 4 but this isn't actually a feature. In 4.ten I would love to come across more than and broader ranging support and contributions from the customs. With CPython now being on GitHub, that can hateful 1 of 2 things, the community argues about features on the issue tracker (see other core language projects) or, information technology means that more people raise pull-requests, fix bugs and improve Python platform support.
Is that it?
I recall every major/linguistic communication projection has a "change hump", .NET was 1.i to ii. PHP was 5 to 7, Perl was 5 to 6.
AngularJS 2?
In one case they go over this change hump, the community can settle down, accept minor losses in backward compatibility in the name of innovation and program for change. If the community diverges, information technology typically tolls the finish of the project until something meliorate comes along.
Python 4 doesn't have to have the aforementioned huge number of breaking changes that iii did, but those changes were needed to take Python forward into the future and at present we tin can talk most fun things in 4 instead of still discussing string types.
What most?
Ternary operators? Like??
in C# 6.0. Python has 10 if y else z
equally per PEP-308, not probable to have a specific operator.
Like my postal service? Delight click the 💚 below. Also, feel free to comment with your own ideas.
Tags
Related Stories
Source: https://hackernoon.com/4-things-i-want-to-see-in-python-4-0-85b853e86a88
0 Response to "how to see what version of python i have"
Post a Comment