search
HomeBackend DevelopmentPython TutorialGuido, the father of Python, talks about the future of Python

In early June, Guido van Rossum, the father of Python, gave a speech called "Python Language" at today's PyCon US conference. Recently, he accepted an interview with IT media Infoworld and talked about the future of Python. Let’s take a look at what Father Guido thinks of the future of Python.

The application of Python in the field of mobile computing

Guido: Mobile is still a difficult platform for Python, but it is not as difficult as the browser platform because Python can actually run on all brands of smartphones Up. You just need to find someone who knows how to build a mobile version of Python.

Standard CPython source code can almost be compiled into binaries that can run on Android and Apple phones. There are many people working hard in this area and constantly contributing patch packages. But progress has been slower than I would have liked. But then again, I don’t develop mobile apps myself, so I don’t have much motivation to get involved myself. But I'd love to see progress on this.

Python replaces JavaScript?

Guido: This is not our goal. Due to the structural issues of the browser platform, it is difficult for us to compete with JavaScript. The most we can do is translate Python into JavaScript. Typically, however, translated programs run slower than native Python programs and slower than similar programs written in JavaScript. Now some people are trying to translate Python into JavaScript and run Python in the browser.

Thoughts on WebAssembly

This might make it possible to run Python in the browser. If it replaces asm.js, it basically means that JavaScript is no longer the only language used on the Web platform, but becomes this thing similar to assembly language. This is a bit like Python. The underlying Python interpreter of the Python code you write is actually written in C language. During compilation, the Python code is translated into machine code, and some kind of assembly language is also involved.

If we can’t kill JavaScript in browsers, we might be able to make JavaScript the unifying translation object for any language that wants to run in a browser. In this case, perhaps Python and other languages, such as Ruby and PHP, can be efficiently translated into the underlying JavaScript.

WebAssembly is actually an opportunity for Python developers. I believe there will be a trial period where those who prefer development tools can have the opportunity to explore the best way to run Python on top of WebAssembly. After their experiment is successful and they start to promote it, we can say to Python developers, "You can now write browser client apps in Python." But now is not the time.

Python performance improvements

Guido: The performance of Python 3 has caught up and is much faster than in 2012. Alternatively, there are Python implementations like PyPy. There are some new versions of the Python interpreter that are also trying to improve speed.

In fact, the performance of Python is not as bad as people say, and because Python is mostly implemented in C language, many things can be done as fast as C language. I still think that Python is fast enough for most things.

Although there are no new features in Python 3 to improve speed, we have made many aspects of the language faster: for example, reference counting is faster than before. The main thing is to optimize the existing code, but as a user, it is difficult to notice the difference.

And if you urgently need to speed up a Python program, you can try using PyPy. It's mature enough to be worth trying.

Why is Python popular?

Guido: Mainly because it is easy to learn and use, and the community is open and developers are active and helpful.

How is Python development currently and in the future? What's the plan?

Guido: Currently, and over the past five years or so, it is mainly other people who are driving the development of Python. I occasionally provide guidance on whether a new idea is worth accepting, usually when designing to add new syntax. I rarely interfere when it comes to standard library development. Sometimes, I have to ask everyone to stop discussing and compromise.

My idea is to make the community self-perpetuating so that I can eventually retire or at least take a long vacation. I hope that in the future this language will absorb new ideas from other languages ​​or other fields.

I finally want to talk about SciPy and NumPy. These two teams are promoting the use of Python as an alternative to Matlab. Our alternatives are open source and better, they can do it. They are taking Python into areas I never imagined before. They've developed things like Jupyter Notebooks for using interactive Python in the browser.


Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
What are the alternatives to concatenate two lists in Python?What are the alternatives to concatenate two lists in Python?May 09, 2025 am 12:16 AM

There are many methods to connect two lists in Python: 1. Use operators, which are simple but inefficient in large lists; 2. Use extend method, which is efficient but will modify the original list; 3. Use the = operator, which is both efficient and readable; 4. Use itertools.chain function, which is memory efficient but requires additional import; 5. Use list parsing, which is elegant but may be too complex. The selection method should be based on the code context and requirements.

Python: Efficient Ways to Merge Two ListsPython: Efficient Ways to Merge Two ListsMay 09, 2025 am 12:15 AM

There are many ways to merge Python lists: 1. Use operators, which are simple but not memory efficient for large lists; 2. Use extend method, which is efficient but will modify the original list; 3. Use itertools.chain, which is suitable for large data sets; 4. Use * operator, merge small to medium-sized lists in one line of code; 5. Use numpy.concatenate, which is suitable for large data sets and scenarios with high performance requirements; 6. Use append method, which is suitable for small lists but is inefficient. When selecting a method, you need to consider the list size and application scenarios.

Compiled vs Interpreted Languages: pros and consCompiled vs Interpreted Languages: pros and consMay 09, 2025 am 12:06 AM

Compiledlanguagesofferspeedandsecurity,whileinterpretedlanguagesprovideeaseofuseandportability.1)CompiledlanguageslikeC arefasterandsecurebuthavelongerdevelopmentcyclesandplatformdependency.2)InterpretedlanguageslikePythonareeasiertouseandmoreportab

Python: For and While Loops, the most complete guidePython: For and While Loops, the most complete guideMay 09, 2025 am 12:05 AM

In Python, a for loop is used to traverse iterable objects, and a while loop is used to perform operations repeatedly when the condition is satisfied. 1) For loop example: traverse the list and print the elements. 2) While loop example: guess the number game until you guess it right. Mastering cycle principles and optimization techniques can improve code efficiency and reliability.

Python concatenate lists into a stringPython concatenate lists into a stringMay 09, 2025 am 12:02 AM

To concatenate a list into a string, using the join() method in Python is the best choice. 1) Use the join() method to concatenate the list elements into a string, such as ''.join(my_list). 2) For a list containing numbers, convert map(str, numbers) into a string before concatenating. 3) You can use generator expressions for complex formatting, such as ','.join(f'({fruit})'forfruitinfruits). 4) When processing mixed data types, use map(str, mixed_list) to ensure that all elements can be converted into strings. 5) For large lists, use ''.join(large_li

Python's Hybrid Approach: Compilation and Interpretation CombinedPython's Hybrid Approach: Compilation and Interpretation CombinedMay 08, 2025 am 12:16 AM

Pythonusesahybridapproach,combiningcompilationtobytecodeandinterpretation.1)Codeiscompiledtoplatform-independentbytecode.2)BytecodeisinterpretedbythePythonVirtualMachine,enhancingefficiencyandportability.

Learn the Differences Between Python's 'for' and 'while' LoopsLearn the Differences Between Python's 'for' and 'while' LoopsMay 08, 2025 am 12:11 AM

ThekeydifferencesbetweenPython's"for"and"while"loopsare:1)"For"loopsareidealforiteratingoversequencesorknowniterations,while2)"while"loopsarebetterforcontinuinguntilaconditionismetwithoutpredefinediterations.Un

Python concatenate lists with duplicatesPython concatenate lists with duplicatesMay 08, 2025 am 12:09 AM

In Python, you can connect lists and manage duplicate elements through a variety of methods: 1) Use operators or extend() to retain all duplicate elements; 2) Convert to sets and then return to lists to remove all duplicate elements, but the original order will be lost; 3) Use loops or list comprehensions to combine sets to remove duplicate elements and maintain the original order.

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

Atom editor mac version download

Atom editor mac version download

The most popular open source editor

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

Dreamweaver Mac version

Dreamweaver Mac version

Visual web development tools

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment