Home Backend Development Python Tutorial Why did python2 become 3?

Why did python2 become 3?

May 15, 2019 am 10:22 AM
python3

A question that beginners will encounter is, why did Python2 become Python3? Which one is better, Python2 or Python3, and which one should I learn?

Why did python2 become 3?

In the Python circle, the debate about Python 2 and Python 3 continues, always rising one after another. Although compatibility with Python 2 and Python 3 has been achieved to a certain extent in many projects, the problems between the two are still unavoidable and remain one of the key points that the programming community must pay attention to.

Current Situation

The Python core team has time plans for different Python versions. They plan to stop supporting Python 2 in 2020 and devote all their efforts to Python 3. Did you see a lot of familiar tools? In the near future, you will have to use Python 3 in these tools and really give up using Python 2. But there are still more than 2 years left, so it’s not too late. Those who are interested can also invest in various tools from Python 2 to Python 3 for code modification work. Python version 3.0 is a major upgrade compared to earlier versions of Python. Python3 must be the future trend, but it does not support backward compatibility, that is, the code we wrote in python2.7 version cannot be run directly in python3.

Core advantages of Python3

1. print becomes print()

The print in Python 2 is just a statement. In addition to outputting the following content, no other additional operations can be performed. When print() is used as a function, various keyword arguments can be added to improve the standard behavior and enable more additional operations.

2. By default, strings will be converted to Unicode encoding

A "trap" that Python developers often face is the encoding problem of strings. Countless Python developers have encountered this problem for more than a day or two when dealing with Unicode and often ASCII strings.

This type of problem will not occur as often in Python 3.x. Strings default to Unicode encoding and users will no longer need to use the terms Unicode and ASCII/non-Unicode strings. Python 3 uses the concepts of text and (binary) data instead of Unicode strings and 8-bit strings. All text is Unicode encoded, and encoded Unicode is represented as binary data.

3. Updated integer

(1) Single integer type

realizes the unification of int and long. Using int to exceed the native integer size no longer causes an OverflowError exception. The long type has disappeared in Python 3.0, and the suffix L has been deprecated.

(2) Changes in division

Given any two operands, "/" always returns a floating point number, and "//" always means downward division.

4. The source code of Python3 is UTF-8 encoded by default, so we don’t need to convert the Chinese encoding now, and can directly use and output Chinese.

The above is the detailed content of Why did python2 become 3?. For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
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

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

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

How to solve the permissions problem encountered when viewing Python version in Linux terminal? How to solve the permissions problem encountered when viewing Python version in Linux terminal? Apr 01, 2025 pm 05:09 PM

Solution to permission issues when viewing Python version in Linux terminal When you try to view Python version in Linux terminal, enter python...

How to efficiently copy the entire column of one DataFrame into another DataFrame with different structures in Python? How to efficiently copy the entire column of one DataFrame into another DataFrame with different structures in Python? Apr 01, 2025 pm 11:15 PM

When using Python's pandas library, how to copy whole columns between two DataFrames with different structures is a common problem. Suppose we have two Dats...

How to teach computer novice programming basics in project and problem-driven methods within 10 hours? How to teach computer novice programming basics in project and problem-driven methods within 10 hours? Apr 02, 2025 am 07:18 AM

How to teach computer novice programming basics within 10 hours? If you only have 10 hours to teach computer novice some programming knowledge, what would you choose to teach...

How to avoid being detected by the browser when using Fiddler Everywhere for man-in-the-middle reading? How to avoid being detected by the browser when using Fiddler Everywhere for man-in-the-middle reading? Apr 02, 2025 am 07:15 AM

How to avoid being detected when using FiddlerEverywhere for man-in-the-middle readings When you use FiddlerEverywhere...

What are regular expressions? What are regular expressions? Mar 20, 2025 pm 06:25 PM

Regular expressions are powerful tools for pattern matching and text manipulation in programming, enhancing efficiency in text processing across various applications.

How does Uvicorn continuously listen for HTTP requests without serving_forever()? How does Uvicorn continuously listen for HTTP requests without serving_forever()? Apr 01, 2025 pm 10:51 PM

How does Uvicorn continuously listen for HTTP requests? Uvicorn is a lightweight web server based on ASGI. One of its core functions is to listen for HTTP requests and proceed...

What are some popular Python libraries and their uses? What are some popular Python libraries and their uses? Mar 21, 2025 pm 06:46 PM

The article discusses popular Python libraries like NumPy, Pandas, Matplotlib, Scikit-learn, TensorFlow, Django, Flask, and Requests, detailing their uses in scientific computing, data analysis, visualization, machine learning, web development, and H

How to dynamically create an object through a string and call its methods in Python? How to dynamically create an object through a string and call its methods in Python? Apr 01, 2025 pm 11:18 PM

In Python, how to dynamically create an object through a string and call its methods? This is a common programming requirement, especially if it needs to be configured or run...

See all articles