পাইথন এবং C++ এর নামস্থান সত্যিই তুলনা করা যায় না। উদাহরণস্বরূপ, C++ -
-এ// a.h namespace ns { struct A { .. }; struct B { .. }; }
আমরা যদি এই কাজটি করতাম -
#include "a.h" using ns::A;
সেই কোডের বিন্দু হল একটি অযোগ্য লিখতে সক্ষম হওয়া (অর্থাৎ, ns::A লিখতে হবে না)। এখন, আপনি একটি পাইথনকে −
এর সমতুল্য বিবেচনা করতে পারেনfrom a import A
কিন্তু ব্যবহার করা যাই হোক না কেন, সম্পূর্ণ a.h হেডার এখনও অন্তর্ভুক্ত এবং সংকলিত হবে, তাই আমরা এখনও ns::B লিখতে সক্ষম হব, যেখানে পাইথন সংস্করণে, a.B দৃশ্যমান হবে না। অন্য C++ সংস্করণ,
using namespace ns;
এছাড়াও একটি পাইথন অ্যানালগ নেই। এটি পুরো কোড-বেস জুড়ে নেমস্পেস এনএস থেকে সমস্ত নাম নিয়ে আসে - এবং নেমস্পেসগুলি পুনরায় ব্যবহার করা যেতে পারে। উদাহরণস্বরূপ,
#include <vector> #include <map> #include <algorithm> using namespace std; // bring in EVERYTHING
সেই এক লাইন −
এর সমতুল্যfrom vector import * from map import * from algorithm import *
অন্তত এটি যা করে তাতে, কিন্তু তারপরে এটি প্রকৃতপক্ষে নামস্থান std-এ যা আছে তা নিয়ে আসে - যা অগত্যা সবকিছু নয়৷