Bagaimana untuk memahami modul Python dengan cara yang paling mudah dan paling popular?

WBOY
Lepaskan: 2023-05-20 17:31:06
ke hadapan
1418 orang telah melayarinya

Ringkasnya, modul Python ialah fail boleh laku dengan akhiran .py, yang digunakan untuk memanggil pembolehubah dan fungsi berulang kali.

Bagaimana untuk memahami modul Python dengan cara yang paling mudah dan paling popular?

Contohnya, jika anda berulang kali perlu membaca fail CSV semasa analisis data, selain menggunakan kaedah perpustakaan siap sedia seperti panda, anda juga boleh menulis modul sendiri untuk memanggil.

# -*- coding: utf-8 -*-
import csv
desc = '这是csv读取函数'
print(desc)
def read_csv(path):
with open(path, newline='') as csvfile:
reader = csv.DictReader(csvfile)
for i in reader:
print(i)
Salin selepas log masuk

Anda hanya perlu menyimpan skrip di atas sebagai fail .py, dan kemudian anda boleh mengimport fungsi read_csv di dalamnya dan memanggilnya terus dalam kod anda.

Sebagai contoh, jika saya menyimpan skrip sebagai readcsv.py dan menyimpannya dalam folder semasa, dan memanggilnya dalam kod baharu, saya hanya perlu memasukkan nama laluan fail csv untuk membaca fail yang sepadan .

from readcsv import read_csv
read_csv("e:\test.csv")
Salin selepas log masuk

mendapat keputusan berikut:

Bagaimana untuk memahami modul Python dengan cara yang paling mudah dan paling popular?

Ini ialah modul bertulis Anda boleh memanggilnya pada bila-bila masa dan di mana-mana sahaja tanpa perlu menulisnya berulang kali dalam kod. Kaedah yang kompleks.

Kami melihat bahawa selepas menjalankan kod, pemalar modul digunakan secara langsung, dan fungsi modul juga dipanggil, yang melibatkan definisi fungsi modul:

❝Modul Python ( Modul) ialah fail Python yang berakhir dengan .py dan mengandungi definisi objek Python dan penyataan Python ❞

Modul ini bersamaan dengan kotak alat yang dikapsulkan parameter yang berkaitan Anda boleh menggunakan fungsinya.

Secara amnya, projek kod Python berskala besar akan mempunyai banyak modul untuk menjadikan logik lebih jelas.

Selain mengimport melalui import, fail modul .py juga boleh dijalankan terus sebagai skrip.

Kami bertukar ke direktori di mana skrip terletak pada baris arahan dan masukkan:

python readcsv.py
Salin selepas log masuk

untuk terus melaksanakan kod yang sepadan:

Bagaimana untuk memahami modul Python dengan cara yang paling mudah dan paling popular?

Jika anda Menambah penyataan if __name__ == "__main__": pada kod skrip, maka kod yang mengikuti pernyataan itu hanya akan berkuat kuasa apabila skrip dilaksanakan secara langsung dan tidak akan dilaksanakan apabila modul diimport.

# -*- coding: utf-8 -*-
import csv
desc = '这是csv读取函数'
print(desc)
def read_csv(path):
with open(path, newline='') as csvfile:
reader = csv.DictReader(csvfile)
for i in reader:
print(i)

if __name__ == "__main__":
print("直接运行脚本时生效")
Salin selepas log masuk

Ini juga merupakan soalan yang mengelirukan ramai orang Jika __name__ == "__main__": Apakah kegunaannya?

__main__ sentiasa merujuk kepada nama modul pelaksanaan semasa (termasuk. akhiran .py) .

__name__​ ialah pembolehubah terbina dalam Apabila modul dilaksanakan secara langsung, __name__ adalah sama dengan nama fail (termasuk akhiran .py).

Jika modul diimport ke dalam modul lain, __name__ modul adalah sama dengan nama modul (tidak termasuk akhiran .py).

Jadi apabila skrip dilaksanakan secara langsung, __name__ == "__main__" adalah benar dan kod berikut boleh terus dilaksanakan.

Apabila mengimport modul, __name__ == "__main__" adalah palsu, yang tidak benar dan kod berikut tidak boleh dilaksanakan.

Operasi ini selalunya digunakan untuk menyediakan antara muka pengguna yang mudah untuk modul, atau untuk ujian (menjalankan modul sebagai skrip yang melaksanakan suite ujian).

Berikut adalah modul terbina dalam yang biasa digunakan dalam Python untuk rujukan.

Bagaimana untuk memahami modul Python dengan cara yang paling mudah dan paling popular?

Atas ialah kandungan terperinci Bagaimana untuk memahami modul Python dengan cara yang paling mudah dan paling popular?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:51cto.com
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan