কম্পিউটার টিউটোরিয়াল

পাইথন নেমস্পেস/প্যাকেজ থেকে সবকিছু ইমপোর্ট করা

চিতাবনী

from package import * ব্যবহার করা খারাপ অভ্যাস। কারণ:

  • প্যাকেজ সুপার-মডিউল নয়, এটি মডিউলগুলোর সংকলন
  • নেমস্পেস পলিউশন ও নেম কনফ্লিক্ট হয়
  • কোড পড়া কঠিন হয় (কোনো নাম কোথা থেকে আসছে জানা যায় না)

যদি আপনাকে অবশ্যই করতে হয়

__init__.py-এ __all__ লিস্ট ডিফাইন করুন:

# mypackage/__init__.py
__all__ = ['submodule1', 'submodule2', 'some_function']

তब from mypackage import * শুধু লিস্ট করা নেমগুলো ইমপোর্ট করবে।

বিকল্প: স্পষ্ট ইমপোর্ট (সুপারিশকৃত)

# ভালো
from mypackage.submodule1 import func1
from mypackage import submodule2

# অথবা
import mypackage.submodule1 as m1
m1.func1()

সারসংক্ষেপ

  • কभीই `import *` ব্যবহার করবেন না প্রোডাকশন কোডে।
  • প্রয়োজনীয় স্পষ্টভাবে ইমপোর্ট করুন।
  • প্যাকেজ ডিজাইনার হলে `__all__` ডিফাইন করুন।
  1. পাইথনে তালিকা থেকে ডুপ্লিকেট সরানোর পদ্ধতি

  2. Python-এ Matplotlib ইম্পোর্ট ও ইনস্টল করার পদ্ধতি

  3. পাইথনে লিস্ট থেকে এলিমেন্ট রিমুভ করার পদ্ধতিগুলো

  4. পাইথনে লেবেল (Label) থেকে টেক্সট রিমুভ করা