Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Pernyataan Import Python 3 Berubah daripada Python 2?

Bagaimanakah Pernyataan Import Python 3 Berubah daripada Python 2?

Linda Hamilton
Linda Hamiltonasal
2024-11-28 16:13:15809semak imbas

How Have Python 3 Import Statements Changed from Python 2?

Evolusi Pernyataan Import dalam Python 3

Python 3 telah memperkenalkan perubahan ketara pada pernyataan import untuk menggalakkan kejelasan dan mengelakkan kekaburan.

Import Relatif

Dalam Python 2, import relatif tersirat dalam pakej digunakan secara meluas. Ini bermakna modul boleh mengimport daripada modul lain dalam pakej yang sama tanpa menentukan laluan. Contohnya:

# Python 2
from my_module import MyClass

Walau bagaimanapun, dalam Python 3, import relatif tidak lagi disokong. Sebaliknya, import eksplisit atau import mutlak mesti digunakan. Ini membantu mengelakkan kekeliruan tentang sama ada import adalah relatif atau mutlak.

# Python 3
from .my_module import MyClass

Import Bintang

Import Bintang, yang mengimport semua simbol daripada modul menggunakan *, adalah dibenarkan dalam Python 2 pada tahap modul dan fungsi. Walau bagaimanapun, dalam Python 3, import bintang hanya dibenarkan pada peringkat modul. Ini membantu meningkatkan kebolehbacaan dan mengurangkan kemungkinan konflik ruang nama.

Sebagai contoh, dalam Python 2, perkara berikut dibenarkan:

# Python 2
def my_function():
    from math import *

Dalam Python 3, ini mesti ditukar kepada:

# Python 3
def my_function():
    from math import sin, degrees

Dengan memahami perubahan dalam pernyataan import ini, pembangun boleh memastikan kod mereka serasi dengan Python 3 dan mengelakkan kekaburan dan potensi kesilapan.

Atas ialah kandungan terperinci Bagaimanakah Pernyataan Import Python 3 Berubah daripada Python 2?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn