একটি বিশ্ব পরিবর্তনশীল কি?
একটি গ্লোবাল ভেরিয়েবল হল একটি ভেরিয়েবল যা ফাংশনের বাইরে ঘোষণা করা হয় তবে আমাদের এটি ফাংশনের ভিতরে ব্যবহার করতে হবে।
উদাহরণ
def func(): print(a) a=10 func()
আউটপুট
10
এখানে, পরিবর্তনশীল a হল বিশ্বব্যাপী। যেহেতু এটি ফাংশনের বাইরে ঘোষণা করা হয়েছে এবং ফাংশনের ভিতরেও ব্যবহার করা যেতে পারে। তাই ভেরিয়েবল a এর সুযোগ বিশ্বব্যাপী।
আমরা দেখব যদি আমরা ফাংশনের ভিতরে গ্লোবাল ভেরিয়েবলের মতো একই নামের একটি ভেরিয়েবল তৈরি করি তাহলে কী হবে৷
উপরের উদাহরণে, a ভেরিয়েবল ফাংশনের বাইরে ঘোষণা করা হয়েছে এবং তাই বিশ্বব্যাপী।
যদি আমরা ফাংশনের ভিতরে একই নামের আরেকটি ভ্যারিয়েবল ডিক্লেয়ার করি তাহলে অন্য ভ্যালু দিয়ে। সেই ভেরিয়েবলটি ফাংশনের লোকাল ভেরিয়েবল হিসেবে কাজ করবে এবং এর সুযোগ ফাংশনের ভিতরেই সীমাবদ্ধ থাকবে। ফাংশনের বাইরে, গ্লোবাল ভেরিয়েবল তার আসল মান ধরে রাখবে।
এটি একটি উদাহরণের সাহায্যে আরও ভালভাবে বোঝা যাবে।
উদাহরণ
a=10 def func(): a=5 print("Inside function:",a) func() print("Outside function:",a)
আউটপুট
Inside function: 5 Outside function: 10
উপরের উদাহরণে, a হল গ্লোবাল ভেরিয়েবল যার মান 10। পরে func() বলা হয়।
func() এর ভিতরে, অন্য একটি ভেরিয়েবল a বিভিন্ন মানের সাথে ঘোষিত হয় যার সুযোগ শুধুমাত্র ফাংশনের ভিতরে সীমাবদ্ধ। তাই, যখন a এর মান পরবর্তীতে ফাংশনের বাইরে প্রিন্ট করা হয়, তখন এটি গ্লোবাল ভেরিয়েবলের মতো একই মূল মান বহন করে যা 10।
কীওয়ার্ড:বিশ্বব্যাপী
গ্লোবাল কীওয়ার্ডটি ব্যবহার করা হয় যখন আপনাকে একটি ফাংশনের ভিতরে একটি গ্লোবাল ভেরিয়েবল ঘোষণা করতে হয়।
ফাংশনের ভিতরে ঘোষিত সাধারণ পরিবর্তনশীলের সুযোগ শুধুমাত্র ফাংশনের শেষ পর্যন্ত।
যাইহোক, আপনি যদি ফাংশনের বাইরেও ভেরিয়েবল ব্যবহার করতে চান, তাহলে ভেরিয়েবল ঘোষণা করার সময় গ্লোবাল কীওয়ার্ড ব্যবহার করুন।
উদাহরণ বাস্তবায়নের সাহায্যে উভয়ের মধ্যে পার্থক্য বুঝুন।
উদাহরণ
def func(): a=5 print("Inside function:",a) func() print("Outside function:",a)
আউটপুট
Inside function: 5 Traceback (most recent call last): print("Outside function:",a) NameError: name 'a' is not defined
উপরের উদাহরণে, a-এর মান ফাংশনের বাইরে অ্যাক্সেস করা যাবে না, যেহেতু এটি একটি স্থানীয় পরিবর্তনশীল। সুতরাং, একটি বহিরাগত ফাংশনের মান অ্যাক্সেস করা একটি ব্যতিক্রম নিক্ষেপ করে৷
গ্লোবাল কীওয়ার্ড ব্যবহার করুন
উপরের উদাহরণে উত্থাপিত ব্যতিক্রমটি সমাধান করা যেতে পারে যদি আমরা বৈশ্বিক কীওয়ার্ড ব্যবহার করে পরিবর্তনশীল ঘোষণা করি।
উদাহরণ
def func(): global a a=5 print("Inside function:",a) func() print("Outside function:",a)
আউটপুট
Inside function: 5 Outside function: 5
উপরের উদাহরণে, a ভেরিয়েবলটি বিশ্বব্যাপী এবং তাই এর মানটি ফাংশনের বাইরেও অ্যাক্সেস করা যেতে পারে।