পাইথনে, একটি নেমস্পেস প্যাকেজ আপনাকে পাইথন কোডকে একাধিক প্রজেক্টের মধ্যে ছড়িয়ে রাখতে দেয়। এটি তখন উপকারী হয় যখন আপনি সম্পর্কিত লাইব্রেরিগুলো আলাদা আলাদা ডাউনলোড হিসেবে রিলিজ করতে চান। উদাহরণস্বরূপ, PYTHONPATH-এ Package-1 এবং Package-2 ডিরেক্টরি থাকলে,
Package-1/namespace/__init__.py
Package-1/namespace/module1/__init__.py
Package-2/namespace/__init__.py
Package-2/namespace/module2/__init__.py
এন্ড-ইউজার namespace.module1 এবং namespace.module2 ইমপোর্ট করতে পারবেন।
পাইথন ৩.৩+ এ ইমপ্লিসিট নেমস্পেস প্যাকেজ
পাইথন ৩.৩-এ, আপনাকে কিছুই করতে হয় না, শুধু আপনার নেমস্পেস প্যাকেজ ডিরেক্টরিতে কোনো __init__.py ফাইল না রাখলেই কাজ করবে। কারণ পাইথন ৩.৩ ইমপ্লিসিট নেমস্পেস প্যাকেজ শুরুর করে।
পুরানো ভার্সনে pkgutil ব্যবহার
পুরানো ভার্সনে, pkgutil নামক একটি স্ট্যান্ডার্ড মডিউল আছে, जिससे আপনি একটি দত্ত নেমস্পেসে মডিউল 'অ্যাপেন্ড' করতে পারেন। Package-1/namespace/__init__.py এবং Package-2/namespace/__init__.py উভয় ফাইলে নিচের দুটি লাইন রাখুন:
from pkgutil import extend_path
__path__ = extend_path(__path__, __name__)
এটি প্যাকেজের __path__-এ sys.path-এর সকল সাব-ডিরেক্টরি (যাদের নাম প্যাকেজের নাম অনুযায়ী) যোগ করবে। এরপর আপনি দুটি প্যাকেজ আলাদা করে ডিস্ট্রিবিউট করতে পারবেন এবং পাইথন নেমস্পেসড প্যাকেজের সুবিধা নিতে পারবেন।