Apakah Pernyataan `import *` Sebenarnya Import dalam Python?

Linda Hamilton
Lepaskan: 2024-11-16 06:33:03
asal
604 orang telah melayarinya

What Does the `import *` Statement Actually Import in Python?

Apa yang Import * Pernyataan Import

Dalam Python, pernyataan import * mengimport semua objek daripada modul yang ditentukan ke dalam modul semasa. Ini membenarkan penggunaan simbol yang dieksport (pembolehubah, kelas, kaedah, dsb.) daripada modul yang diimport tanpa meletakkan awalannya dengan nama modul.

Contoh:

>>> from math import *
>>> pi
3.141592653589793
>>> sin(pi/2)
1.0
Salin selepas log masuk

Perbandingan dengan Import Eksplisit:

Walau bagaimanapun, penggunaan import * biasanya tidak digalakkan disebabkan oleh:

  • Perlanggaran ruang nama: Objek yang diimport boleh mengatasi simbol sedia ada dalam modul semasa.
  • Ketidakcekapan: Mengimport banyak objek boleh melambatkan atur cara.
  • Kekurangan dokumentasi: Ia tidak 't mendokumentasikan secara eksplisit asal objek yang diimport.

Sebaliknya, amalan yang lebih baik ialah:

  • Import objek khusus sahaja: Gunakan daripada import modul objek untuk mengimport objek yang diperlukan sahaja.
  • Import modul dengan ruang namanya: Gunakan modul import sebagai alias untuk mengakses objek yang diimport melalui nama modul atau alias.

Pengecualian:

Sesetengah perpustakaan mungkin mempunyai sub-modul khusus yang direka untuk diimport dengan import *. Sebagai contoh, sub-modul pygame.locals perpustakaan Pygame mengandungi pemalar dan fungsi yang biasa digunakan.

Mengimport daripada Sub-Modul:

Mengimport daripada sub-modul memerlukan eksplisit spesifikasi, walaupun semasa menggunakan import * dalam sub-modul. Contohnya, daripada import urllib * tidak mengimport semua sub-modul seperti urllib.request.

Atas ialah kandungan terperinci Apakah Pernyataan `import *` Sebenarnya Import dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan