নেমস্পেস কী?
প্রতিটি প্যাকেজ, মডিউল, ক্লাস, ফাংশন এবং মেথডের নিজস্ব নেমস্পেস থাকে যেখানে ভেরিয়েবল নাম রেজলভ হয়। ফাংশন কল, অবজেক্ট ইনস্ট্যানশিয়েশন, মডিউল/প্যাকেজ ইমপোর্ট করলে নেমস্পেস তৈরি হয়।
সহজ উপায়: ক্লাস ব্যবহার করে নেমস্পেস অবজেক্ট
class Namespace:
def __init__(self, **kwargs):
self.__dict__.update(kwargs)
args = Namespace(a=1, b='c')
print(args.a, args.b) # আউটপুট: 1 c
এটি argparse.Namespace-এর মতো সিম্পল নেমস্পেস অবজেক্ট তৈরি করে।
অন্যান্য উপায় নেমস্পেস তৈরি করার
- ফাংশন কল: লোকাল নেমস্পেস তৈরি হয়
- মডিউল ইমপোর্ট: মডিউল নেমস্পেস তৈরি হয়
- ক্লাস ডেফিনিশন: ক্লাস নেমস্পেস তৈরি হয়
types.SimpleNamespace(Python 3.3+): বিল্ট-ইন সহজ নেমস্পেস
SimpleNamespace উদাহরণ (Python 3.3+)
from types import SimpleNamespace
args = SimpleNamespace(a=1, b='c')
print(args.a, args.b) # 1 c
args.new_attr = 100 # ডাইনামিক্যালি অ্যাট্রিবিউট যোগ করা যায়
সারসংক্ষেপ
- নেমস্পেস তৈরি = স্কোপ তৈরি (ফাংশন, ক্লাস, মডিউল, অবজেক্ট)
- সিম্পল ডেটা কন্টেইনার জন্য
SimpleNamespaceবা কাস্টম ক্লাস ব্যবহার করুন argparse.Namespaceকমান্ড লাইন আর্গুমেন্ট পার্সিংয়ের জন্য ব্যবহৃত হয়