مرکزی مواد پر جائیں
ماڈیول 7 · سبق 4 از 4کورس میں 28/36~10 min
ماڈیول اسباق (4/4)

درآمد اور ماڈیولز

Python میں ایک ماڈیول صرف ایک .py فائل ہے۔ ماڈیول کا کوڈ استعمال کرنے کے لیے دوسری فائل سے، آپ اسے درآمد کرتے ہیں۔

import کے فارم

Python
# 1) import del modulo intero
import math
math.sqrt(16)        # 4.0
math.pi              # 3.14159...

# 2) import di nomi specifici
from math import sqrt, pi
sqrt(16)             # ora direttamente disponibile
pi

# 3) import con alias
import numpy as np      # convenzione idiomatica
from datetime import datetime as dt

# 4) import "star" (sconsigliato)
from math import *      # inquina il namespace, evita

جہاں ازگر ماڈیولز تلاش کرتا ہے۔

ازگر sys.path میں ماڈیولز تلاش کرتا ہے، جس میں شامل ہیں:

  1. چل رہی اسکرپٹ کی ڈائرکٹری،
  2. PYTHONPATH میں ڈائریکٹریز،
  3. انسٹال شدہ لائبریریاں (site-packages)۔
Python
import sys
sys.path     # lista di directory

ایک ماڈیول بنانا

بنائیں mio_modulo.py:

Python
# mio_modulo.py
PI = 3.14159

def area_cerchio(r):
    return PI * r * r

اسی ڈائرکٹری میں ایک اور فائل سے:

Python
import mio_modulo
mio_modulo.area_cerchio(5)   # 78.53975

from mio_modulo import area_cerchio, PI

if __name__ == "__main__":

جب اسکرپٹ کو براہ راست انجام دیا جاتا ہے، تو اس کا خصوصی متغیر __name__ "__main__" کے برابر ہے۔ جب ایک ہی فائل کو ایک ماڈیول کے طور پر درآمد کیا جاتا ہے، __name__ ماڈیول کے نام کے برابر ہے۔

Python
# strumento.py

def fai_qualcosa():
    print("lavoro!")

if __name__ == "__main__":
    # eseguito solo se lanci `python strumento.py`
    # NON viene eseguito se qualcuno importa questo file
    fai_qualcosa()

یہ فائلوں کے لیے معیاری پیٹرن ہے جو ** دوبارہ قابل استعمال دونوں کے طور پر کام کر سکتا ہے۔ ماڈیول** اور ایک قابل عمل اسکرپٹ۔

پیکیجز: ماڈیولز کے فولڈر

ایک ڈائریکٹری جس میں __init__.py فائل ہوتی ہے (یہاں تک کہ ایک خالی بھی) بن جاتی ہے درآمدی پیکیج:

Code
mio_pkg/
    __init__.py
    utenti.py
    pagamenti.py
Python
from mio_pkg import utenti
from mio_pkg.utenti import crea_utente

آپ کی باری

ورزش#python.m7.l4.e1
کوششیں: 0لوڈ ہو رہا ہے…

فنکشن `sqrt` کو `math` ماڈیول سے درآمد کریں (`math import sqrt` سے)، پھر 144 کے مربع جڑ کی گنتی کریں اور اسے `r` کو تفویض کریں۔ `r` کا اندازہ لگائیں۔

ایڈیٹر لوڈ ہو رہا ہے…
اشارہ دکھائیں۔

ریاضی درآمد sqrt سے

3 کوششوں کے بعد حل دستیاب ہے۔

ورزش کا جائزہ لیں۔

ورزش#python.m7.l4.e2
کوششیں: 0لوڈ ہو رہا ہے…

عرف کے ساتھ `random` ماڈیول درآمد کریں (`random as rnd` درآمد کریں)، پھر rnd.seed(42) کے ساتھ بیج کو 42 پر سیٹ کریں، اور rnd.randint(1، 100) کا اندازہ کریں۔

ایڈیٹر لوڈ ہو رہا ہے…
اشارہ دکھائیں۔

rnd کے بطور بے ترتیب درآمد کریں۔

3 کوششوں کے بعد حل دستیاب ہے۔

اضافی چیلنج

ورزش#python.m7.l4.e3
کوششیں: 0لوڈ ہو رہا ہے…

Import the `sin` and `cos` functions directly from the `math` module using `from ... import ...`. Calculate the sum of `sin(0)` and `cos(0)`, store it in `trig_sum`, and evaluate it.

ایڈیٹر لوڈ ہو رہا ہے…
اشارہ دکھائیں۔

گناہ (0) سے 0.0، cos(0) کی پیداوار 1.0۔ رقم 1.0 ہے۔ ریاضی درآمد گناہ سے استعمال کریں، cos.

3 کوششوں کے بعد حل دستیاب ہے۔