Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial programming >> Python

Impor modul dengan Python dengan Contoh

Apa saja modul dalam Python?

Modul adalah file dengan kode python. Kode dapat berupa variabel, fungsi, atau kelas yang ditentukan. Nama file menjadi nama modul.

Misalnya, jika nama file Anda adalah guru99.py, nama modulnya adalah guru99 . Dengan fungsionalitas modul, Anda dapat memecah kode menjadi file yang berbeda alih-alih menulis semuanya di dalam satu file.

Dalam tutorial ini, Anda akan belajar:

Apa itu modul impor Python?

File dianggap sebagai modul dalam python. Untuk menggunakan modul, Anda harus mengimpornya menggunakan impor kata kunci. Fungsi atau variabel yang ada di dalam file dapat digunakan di file lain dengan mengimpor modul. Fungsionalitas ini tersedia dalam bahasa lain, seperti TypeScript, JavaScript, Java, Ruby, dll.

Bagaimana cara membuat dan mengimpor modul dengan Python?

Sekarang kita akan membuat modul dan mengimpornya ke file lain.

Berikut adalah alur untuk membuat dan mengimpor modul seperti yang ditunjukkan pada tangkapan layar:

Ikuti langkah-langkah yang diberikan untuk membuat modul dengan python.

Struktur folder yang digunakan untuk menguji kode adalah sebagai berikut:

modtest/ test.py display.py 

Langkah 1) Buat file dan beri nama test.py

Langkah 2) Di dalam test.py buat fungsi bernama display_message()

Def display_message():mengembalikan "Selamat datang di Tutorial Guru99!"

Langkah 3) Sekarang buat file lain display.py.

Langkah 4) Di dalam display.py, impor file moduletest.py, seperti yang ditunjukkan di bawah ini:

pengujian impor

Saat mengimpor, Anda tidak perlu menyebutkan test.py tetapi hanya nama file.

Langkah5)

Kemudian Anda dapat memanggil fungsi display_message() dari test.py di dalam display.py, Anda perlu menggunakan module_name.function_name.

Misalnya test.display_message().

Impor testprint(test.display_message())

Langkah 6)

Saat Anda menjalankan display.py, Anda akan mendapatkan output berikut:

Selamat datang di Tutorial Guru99!

Mengimpor Kelas dengan Python

Sebelumnya, kita telah melihat modul sederhana dengan sebuah fungsi. Di sini akan membuat kelas dan merujuk kelas di dalam file lain.

Struktur folder untuk menguji kode adalah sebagai berikut:

myproj/ Car.py display.py

Buat file bernama Car.py dengan kode berikut:

Nama file :Car.py

kelas Mobil:brand_name ="BMW" model ="Z4" manu_year ="2020" def __init__(self, brand_name, model, manu_year):self.brand_name =brand_name self.model =model self.manu_year =manu_year def car_details (sendiri):print("Merek mobil adalah ", self.brand_name) print("Model mobil adalah ", self.model) print("Tahun pembuatan mobil adalah ", self.manu_year) def get_Car_brand(self):print(" Merk mobil adalah ", self.brand_name) def get_Car_model(self):print("Model mobil adalah ", self.model) 

Dalam file Car.py , ada atribut brand_name, model dan manu_year. Fungsi yang didefinisikan di dalam kelas adalah car_details(), get_Car_brand(), get_Car_model().

Sekarang mari kita gunakan file Car.py sebagai modul di file lain bernama display.py.

Nama file :display.py

import Carcar_det =Car.Car("BMW",,"Z5", 2020)print(car_det.brand_name)print(car_det.car_details())print(car_det.get_Car_brand())print(car_det.get_Car_model()) 

Keluaran:

Merek BMWCar adalah BMWModel mobil adalah Z5Tahun pembuatan mobil adalah 2020Merek mobil adalah model BMWCar adalah Z5

Jadi kita bisa mengakses semua variabel dan fungsi dari Car.py menggunakan modul Car.

Menggunakan dari untuk mengimpor modul

Anda hanya dapat mengimpor sebagian kecil dari modul yaitu, hanya fungsi dan nama variabel yang diperlukan dari modul alih-alih mengimpor kode lengkap.

Bila Anda hanya ingin hal-hal tertentu yang akan diimpor, Anda dapat menggunakan kata kunci "dari" untuk mengimpor apa yang Anda inginkan.

Jadi sintaksnya adalah

dari modul impor nama_fungsi Anda, variabel,... dll.

Struktur folder yang digunakan untuk menguji kode adalah sebagai berikut:

modtest/ test.py display.py 

Di test.py ada 2 fungsi seperti yang ditunjukkan :

Nama file :test.py

defdisplay_message():mengembalikan "Selamat datang di Tutorial Guru99!" def display_message1():mengembalikan "Semua tentang Python!"

Sekarang Anda ingin fungsi display_message() . Fungsi atau variabel yang Anda impor dapat langsung diakses seperti gambar di bawah ini:

Nama File :display.py

dari uji impor display_messageprint(display_message())

Keluaran:

Selamat datang di Tutorial Guru99!

Sekarang jika Anda menggunakan fungsi display_message1() , itu akan menimbulkan kesalahan bahwa fungsi tidak didefinisikan seperti yang ditunjukkan di bawah ini:

dari uji impor display_messageprint(display_message1())

Keluaran:

Traceback (panggilan terakhir terakhir):File "display.py", baris 3, di print(display_message1())Kesalahan Nama:nama 'display_message1' tidak ditentukan

Mengimpor semuanya dari modul

Impor memungkinkan Anda untuk mengimpor modul lengkap dengan menggunakan impor diikuti dengan nama modul, yaitu nama file atau perpustakaan yang akan digunakan.

Sintaks:

Impor modul

Atau dengan menggunakan

dari impor modul *

Struktur folder yang digunakan untuk menguji kode adalah sebagai berikut:

modtest/ test.py display.py 

Berikut adalah detail kode di dalam test.py

nama_saya ="Guru99"alamat_saya ="Mumbai"defdisplay_message():kembalikan "Selamat datang di Tutorial Guru99!" def display_message1():mengembalikan "Semua tentang Python!"

Menggunakan modul impor

Dengan hanya menggunakan nama modul impor, untuk merujuk ke variabel dan fungsi di dalam modul, harus diawali dengan nama modul.

Contoh

Nama file :display.py

Impor testprint(test.display_message())print(test.display_message1())print(test.my_name)print(test.my_address)

Pengujian nama modul digunakan untuk merujuk pada fungsi dan variabel di dalam pengujian modul.

Keluaran:

Selamat datang di Tutorial Guru99! Semua tentang Python!Guru99Mumbai

Menggunakan impor *

Mari kita lihat contoh menggunakan import * . Menggunakan impor * , fungsi dan variabel dapat diakses secara langsung, seperti yang ditunjukkan pada contoh di bawah ini:

dari impor uji *print(display_message())print(display_message1())print(my_name)print(my_address)

Keluaran:

Selamat datang di Tutorial Guru99! Semua tentang Python!Guru99Mumbai

Fungsi dir()

Dir() adalah fungsi bawaan dalam python. Dir() mengembalikan semua properti dan metode, termasuk properti bawaan objek yang diberikan.

Jadi ketika dir() digunakan pada modul, itu akan memberi Anda variabel, fungsi yang ada di dalam modul.

Berikut adalah contoh kerja dir() pada modul. Kami memiliki kelas bernama Car.py, mari kita mengimpor Mobil dan menetapkan ke dir() untuk melihat hasilnya.

Struktur folder untuk menguji kode adalah sebagai berikut:

test prop/ Car.py test.py 

Nama file:Car.py

kelas Mobil:brand_name ="BMW" model ="Z4" manu_year ="2020" def __init__(self, brand_name, model, manu_year):self.brand_name =brand_name self.model =model self.manu_year =manu_year def car_details (sendiri):print("Merek mobil adalah ", self.brand_name) print("Model mobil adalah ", self.model) print("Tahun pembuatan mobil adalah ", self.manu_year) def get_Car_brand(self):print(" Merk mobil adalah ", self.brand_name) def get_Car_model(self):print("Model mobil adalah ", self.model) 

Nama file:test.py

import Carclass_contents =dir(Car)print(class_contents)

Outputnya memberi kita nama kelas dan semua fungsi yang didefinisikan di Car.py.

Anda juga dapat mencoba menggunakan dir() pada modul bawaan yang tersedia dengan Python. Mari kita coba hal yang sama di json modul seperti yang ditunjukkan pada contoh di bawah ini. Ini akan menampilkan semua properti dan metode yang tersedia di json modul.

Impor jsonjson_details =dir(json)print(json_details)

Keluaran:

['JSONDecodeError', 'JSONDecoder', 'JSONEncoder', '__all__', '__author__', '__builtins__', '__cached__', '__doc__', '__file__', '__pack'___'__package___' ', '__path__', '__spec__', '__version__', '_default_decoder', '_default_encoder', 'codec', 'decoder', 'detect_encoding', 'dump', 'dumps', 'encoder', 'load', 'memuat', 'pemindai']

Paket

Paket adalah direktori dengan semua modul yang didefinisikan di dalamnya. Untuk membuat juru bahasa Python memperlakukannya sebagai sebuah paket, direktori Anda harus memiliki file init.py. Init.py menjadikan direktori sebagai sebuah paket. Berikut adalah layout dari package yang akan kita kerjakan.

Nama paketnya adalah paket saya . Untuk mulai bekerja dengan paket, buat direktori bernama package/. Di dalam direktori, buat file kosong bernama __init__.py. Buat 3 file lagi module1.py, module2.py, dan module3.py dan tentukan fungsinya seperti yang ditunjukkan pada tangkapan layar. Berikut rincian module1.py,module2.py dan module3.py

modul1.py

def mod1_func1():print("Selamat datang di Module1 function1")def mod1_func2():print("Selamat datang di Module1 function2")def mod1_func3():print("Selamat datang di Module1 function3")

modul2.py

def mod2_func1():print("Selamat datang di Module2 function1")def mod2_func2():print("Selamat datang di Module2 function2")def mod2_func3():print("Selamat datang di Module2 function3")

modul3.py

def mod3_func1():print("Selamat datang di Module3 function1")def mod3_func2():print("Selamat datang di Module3 function2")def mod3_func3():print("Selamat datang di Module3 function3")

Paket s siap digunakan. Sekarang panggil paket di dalam file Anda seperti yang ditunjukkan di bawah ini :test.py:

Di sini, mypackage.module1 diimpor dan diberi nama alias sebagai mod1. Demikian pula, Anda dapat menggunakan modul lain module2.py dan module3.py dari paket saya.

import mypackage.module1 sebagai mod1print(mod1.mod1_func1())print(mod1.mod1_func2())print(mod1.mod1_func2())

Keluaran:

Selamat datang di Module1 function1NoneSelamat datang di Module1 function2NoneSelamat datang di Module1 function2None

Kami baru saja mendemonstrasikan paket dengan modul sederhana dengan fungsi di dalamnya. Sesuai proyek Anda, Anda juga dapat mengemas dengan memiliki sub-paket. Sub-folder/ memiliki modul dengan kelas yang ditentukan.

Jalur Pencarian Modul Python

Selama eksekusi, ketika python menemukan impor nama modul , penerjemah mencoba mencari modul. Itu mencari modul dalam daftar modul bawaan. Kemudian secara keseluruhan, direktori didefinisikan di dalam sys.path.

Singkatnya, penerjemah melakukan pencarian berikut untuk menemukan modul:

  1. Di direktori Anda saat ini.
  2. Di dalam daftar modul bawaan
  3. Di dalam direktori sys.path

Anda bisa mendapatkan detail sys.path dengan mengimpor modul sys dan mencetak sys.path. Ini akan memberi Anda daftar direktori seperti yang ditunjukkan di bawah ini:

importsysprint(sys.path)

Keluaran:

['Python Latest\\task2', 'Users\\AppData\\Local\\Programs\\Python\\Python37\\python37.zip', 'Users\\AppData\\Local\\Programs\\Python \\Python37\\DLLs']

Anda juga dapat memodifikasi jalur dan menyimpan direktori sesuai kebutuhan Anda.

Menggunakan alias modul dalam impor

Anda juga dapat mengonversi nama modul ke bentuk yang lebih pendek dengan memberikan nama alias. Alias ​​dapat dilakukan dengan menggunakan kata kunci.

Sintaks:

impor nama file sebagai nama alias

Struktur folder untuk menguji kode adalah sebagai berikut:

Uji mod/ test.py display.py 

Berikut adalah kode di dalam test.py

nama_saya ="Guru99"alamat_saya ="Mumbai"def display_message():kembalikan "Selamat datang di Tutorial Guru99!" def display_message1():mengembalikan "Semua tentang Python!"

Sekarang akan menggunakan alias untuk test.py di display.py

Impor pengujian sebagai tprint(t.display_message())print(t.display_message1())print(t.my_name)print(t.my_address)

Alias ​​​​yang digunakan untuk modul pengujian adalah t . Jadi fungsi dan variabel dari test.py dapat dirujuk menggunakan alias t.

Keluaran:

Selamat datang di Tutorial Guru99! Semua tentang Python!Guru99Mumbai

Impor Absolut dan Relatif dengan Python

Anda sekarang tahu cara mengimpor file sebagai modul di dalam file lain. Sekarang mari kita lihat bagaimana mengelola file yang tersedia di folder. File dalam folder dapat diimpor baik dengan menggunakan impor absolut atau relatif.

Pertimbangkan Anda memiliki struktur folder proyek Anda, seperti yang ditunjukkan di bawah ini:

Folder root adalah proyek saya/. Ini memiliki dua subfolder package1 dan package2.

Folder package1 memiliki dua modul, module1.py dan module2.py.

Folder package2 memiliki satu kelas myclass.py, sub-paket subpkg dengan module3.py, dan terakhir module4.py.

Menggunakan Impor Mutlak

Untuk impor Absolute, Anda perlu menambahkan seluruh jalur modul Anda langsung dari folder root proyek.

Sekarang mari kita lihat bagaimana menggunakan impor absolut untuk merujuk ke fungsi yang ada di setiap modul.

Untuk bekerja dengan functionmyfunc1, Anda perlu mengimpor sebagai berikut:

dari package1.module1 import myfunc1ataufrom package1 import module1module1.myfunc1() 

Untuk bekerja dengan fungsi myfunc3 Anda perlu mengimpor sebagai berikut:

dari package1.subpkg.module3 import myfunc3ataufrom package1.subpkg import module3module3.myfunc3() 

Keuntungan dan Kerugian menggunakan impor absolut

Berikut adalah keuntungan menggunakan impor absolut:

Kerugian menggunakan impor absolut

Berikut adalah kerugian menggunakan impor absolut:

Kekurangan:

Menggunakan Impor Relatif

Mempertimbangkan struktur folder yang sama yang disebutkan di bawah, kita akan melihat cara mengimpor yang sama menggunakan impor relatif.

Dalam impor relatif, modul yang akan diimpor relatif terhadap lokasi saat ini yaitu lokasi di mana pernyataan impor berada.

Sintaks:

Dalam impor relatif, Anda perlu menambahkan titik (.) sebelum nama modul saat mengimpor menggunakan dari .

Ini akan menjadi 2 periode (..) sebelum nama modul jika modul berada di satu tingkat dari lokasi saat ini.

Mengacu pada gambar struktur folder yang disebutkan di atas, kami memiliki modul berikut dengan fungsinya, yang perlu kami rujuk.

Untuk bekerja dengan functionmyfunc1 Anda perlu mengimpor sebagai berikut:

dari .module1 impor myfunc1

Untuk bekerja dengan fungsi myfunc3, Anda perlu mengimpor sebagai berikut:

dari .subpkg.module3 impor myfunc3

Keuntungan Impor Relatif

Keuntungan:

Kerugian Impor Relatif

Kekurangan:

Ringkasan:


Python

  1. Bilangan Python, Konversi Jenis, dan Matematika
  2. File ZIP Python dengan Contoh
  3. Python readline() Metode dengan Contoh
  4. Rekursi Python
  5. Python dengan Konektivitas MySQL:Konektor, Buat Database, Tabel, Sisipkan [Contoh]
  6. Pernyataan Python Print():Cara Mencetak dengan Contoh