এক প্রোগ্রামের সব ভেরিয়েবল প্রোগ্রামের সব লোকেশন থেকে অ্যাক্সেসযোগ্য নাও হতে পারে। এটি নির্ভর করে আপনি ভেরিয়েবলটি কোথায় ডিক্লেয়ার করেছেন।
এক ভেরিয়েবলের স্কোপ নির্ধারণ করে প্রোগ্রামের কোন অংশ থেকে আপনি একটি নির্দিষ্ট আইডেন্টিফায়ার অ্যাক্সেস করতে পারবেন। পাইথনে ভেরিয়েবলের দুটি বেসিক স্কোপ রয়েছে:
- গ্লোবাল ভেরিয়েবল
- লোকাল ভেরিয়েবল
গ্লোবাল বনাম লোকাল ভেরিয়েবল
ফাংশন বডির ভিতরে ডিফাইন করা ভেরিয়েবলগুলোর লোকাল স্কোপ থাকে, এবং বাইরে ডিফাইন করা গুলোর গ্লোবাল স্কোপ।
এ মানে লোকাল ভেরিয়েবল শুধু সেই ফাংশনের ভিতরে অ্যাক্সেসযোগ্য যেখানে ডিক্লেয়ার করা হয়েছে, আর গ্লোবাল ভেরিয়েবল প্রোগ্রাম বডির যেকোনো জায়গা থেকে সব ফাংশন দ্বারা অ্যাক্সেসযোগ্য। ফাংশন কল করলে এর ভিতরে ডিক্লেয়ার করা ভেরিয়েবল স্কোপে আসে।
উদাহরণ
#!/usr/bin/python
total = 0; # এটি গ্লোবাল ভেরিয়েবল
def sum(arg1, arg2):
total = arg1 + arg2; # এখানে total লোকাল ভেরিয়েবল
print "Inside the function local total : ", total
return total
sum(10, 20)
print "Outside the function global total : ", total
আউটপুট
Inside the function local total : 30 Outside the function global total : 0