কম্পিউটার

পাইথন নেমস্পেস এবং ভেরিয়েবলের সুযোগ ব্যাখ্যা কর।


নেমস্পেস হল সুযোগ বাস্তবায়নের একটি উপায়। পাইথনে, প্রতিটি প্যাকেজ, মডিউল, ক্লাস, ফাংশন এবং পদ্ধতি ফাংশন একটি "নেমস্পেস" এর মালিক যেখানে পরিবর্তনশীল নামগুলি সমাধান করা হয়। যখন একটি ফাংশন, মডিউল বা প্যাকেজ মূল্যায়ন করা হয় (অর্থাৎ, কার্যকর করা শুরু হয়), একটি নামস্থান তৈরি হয়। এটিকে "মূল্যায়ন প্রসঙ্গ" হিসেবে ভাবুন। যখন একটি ফাংশন, ইত্যাদি, সম্পাদন শেষ করে, নামস্থান বাদ দেওয়া হয়। ভেরিয়েবল বাদ দেওয়া হয়. এছাড়াও একটি বিশ্বব্যাপী নামস্থান রয়েছে যা স্থানীয় নামস্থানে না থাকলে ব্যবহার করা হয়৷

প্রতিটি ভেরিয়েবলের নাম স্থানীয় নামস্থানে চেক করা হয় (ফাংশনের বডি, মডিউল ইত্যাদি), এবং তারপর গ্লোবাল নেমস্পেসে চেক করা হয়।

ভেরিয়েবলগুলি সাধারণত শুধুমাত্র একটি স্থানীয় নামস্থানে তৈরি করা হয়। বিশ্বব্যাপী এবং অ-স্থানীয় বিবৃতি স্থানীয় নামস্থান ছাড়া অন্য ভেরিয়েবল তৈরি করতে পারে।

স্কোপ রেজোলিউশন প্রয়োজন হয় যখন একটি ভেরিয়েবল ব্যবহার করা হয় তার মান কোথা থেকে আসবে তা নির্ধারণ করতে। পাইথনে স্কোপ রেজোলিউশন LEGB নিয়ম অনুসরণ করে।

L, Local — কোনো ফাংশনের (বা lambda) মধ্যে যে কোনো ভাবেই নাম বরাদ্দ করা হয়েছে এবং সেই ফাংশনে গ্লোবাল ঘোষণা করা হয়নি।

ই, এনক্লোসিং-ফাংশন লোকালস — অভ্যন্তরীণ থেকে বাহ্যিক পর্যন্ত যে কোনও এবং সমস্ত স্ট্যাটিকালি এনক্লোজিং ফাংশনের (বা ল্যাম্বডাস) স্থানীয় সুযোগে নাম৷

G, গ্লোবাল (মডিউল) — একটি মডিউল ফাইলের শীর্ষ-স্তরে নির্ধারিত নাম, অথবা ফাইলের মধ্যে একটি ডিফ-এ একটি গ্লোবাল স্টেটমেন্ট কার্যকর করার মাধ্যমে।

বি, বিল্ট-ইন (পাইথন) — অন্তর্নির্মিত নাম মডিউলে আগে থেকে নির্ধারিত নাম:open, range, SyntaxError, ইত্যাদি।


  1. পাইথনে নেমস্পেস এবং স্কোপ

  2. পাইথনে একটি নামস্থান কি?

  3. কিভাবে পরিবর্তনশীল সুযোগ পাইথন ফাংশন কাজ করে?

  4. পাইথন ফাংশনে একটি গ্লোবাল ভেরিয়েবল কীভাবে ব্যবহার করবেন?