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 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...

How to solve permission issues when using python --version command in Linux terminal? How to solve permission issues when using python --version command in Linux terminal? Apr 02, 2025 am 06:36 AM

Using python in Linux terminal...

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 get news data bypassing Investing.com's anti-crawler mechanism? How to get news data bypassing Investing.com's anti-crawler mechanism? Apr 02, 2025 am 07:03 AM

Understanding the anti-crawling strategy of Investing.com Many people often try to crawl news data from Investing.com (https://cn.investing.com/news/latest-news)...

Python 3.6 loading pickle file error ModuleNotFoundError: What should I do if I load pickle file '__builtin__'? Python 3.6 loading pickle file error ModuleNotFoundError: What should I do if I load pickle file '__builtin__'? Apr 02, 2025 am 06:27 AM

Loading pickle file in Python 3.6 environment error: ModuleNotFoundError:Nomodulenamed...

What is the reason why pipeline files cannot be written when using Scapy crawler? What is the reason why pipeline files cannot be written when using Scapy crawler? Apr 02, 2025 am 06:45 AM

Discussion on the reasons why pipeline files cannot be written when using Scapy crawlers When learning and using Scapy crawlers for persistent data storage, you may encounter pipeline files...

See all articles