ভেরিয়েবল আসলে মেমোরিতে একটি সংরক্ষিত জায়গা যেখানে কোন ডেটা সংরক্ষণ করা যেতে পারে, যাতে সেটি কি ভবিষ্যতে প্রোগ্রামের মধ্যে দরকার অনুযায়ী ব্যবহার করা যায়।
এবং মেমোরির এই সংরক্ষিত জায়গাটিকে একটা নাম দেওয়া হয় যাকে ভেরিয়েবল নেম (variable name) বলা হয়।
সুতরাং আমরা জানলাম ভেরিয়েবল হল মেমোরিতে একটি জায়গা যেখানে কিছু ডাটা সংরক্ষণ করে রাখা যায়। কিন্তু একে ভেরিয়েবল বলা হয় কেন?
ইংরেজিতে ভেরিএবল কথার অর্থ পরিবর্তনশীল এই ভেরিএবেলের যে ডেটা রাখা যায় সেটিকে প্রোগ্রাম চলাকালীন পরিবর্তন করা সম্ভব অর্থাৎ মেমোরির ওই সংরক্ষিত জায়গাটিতে প্রয়োজন অনুসারে অন্য ডেটাও সংরক্ষণ করা যেতে পারে।
এক একটি প্রোগ্রামিং ল্যাঙ্গুয়েজে এই ভ্যারিয়েবল এর বৈশিষ্ট্য এক এক রকম হয়ে থাকে।
পাইথন ল্যাঙ্গুয়েজ এর ক্ষেত্রে ভেরিএবলের একটি বিশেষ বৈশিষ্ট্য হলো এই ল্যাঙ্গুয়েজে প্রতিটি ভেরিয়েবল কে অবজেক্ট (object) হিসাবে ধরা হয়।
ভেরিয়েবল সম্পর্কে বিস্তারিত জানার আগে সচরাচর ব্যবহৃত কিছু কথার অর্থ আমাদের আগেই বুঝে নিতে হবে যাতে ভবিষ্যতের আলোচনায় আমরা বক্তব্যগুলিকে সঠিকভাবে বুঝতে পারি।
ভেরিয়েবল ডিক্লেয়ার (declaring a variable) করা, এই কথার অর্থ প্রোগ্রামের মধ্যে যে ভেরিয়েবল টা আমি ব্যবহার করতে চলেছি সেটিকে প্রথমবারের জন্য লেখা জাতে ইন্টারপ্রেটর বুঝতে পারে আমি যে ভেরিয়েবল টা উল্লেখ করেছি সেটিকে ভবিষ্যতে ব্যবহার করব।
ভ্যারিয়েবল টাইপ (variable type), এই কথার অর্থ এর মধ্যে যে ডাটা থাকবে সেটি কি ধরনের ডেটা।
Creating variables in Python
পাইথন প্রোগ্রামের ভেরিয়েবল গুলি dynamically typed অর্থাৎ পাইথন প্রোগ্রামের ভেরিয়েবল গুলি কোন নির্দিষ্ট ডেটা টাইপ হয় না। এই ভেরিএবেলের মধ্যে যখন যেরকম ডেটা সংরক্ষণ করা হয় ভেরিএবেলের ডেটাটাইপ ও সেই ডেটা টাইপ নির্দেশ করে।
অন্যান্য অধিকাংশ প্রোগ্রামিং ল্যাংগুয়েজ এর ক্ষেত্রে এরকম হয়না । অন্যান্য ল্যাঙ্গুয়েজ এর ক্ষেত্রে প্রোগ্রাম এর মধ্যে ভেরিয়েবল ইউজ ব্যবহার করার আগে সেটিকে ডিক্লেয়ার করতে হয় এবং তার ডেটা টাইপ ও ডিক্লেয়ার করতে হয়। কিন্তু পাইথন প্রোগ্রামিং ল্যাংগুয়েজ এর ক্ষেত্রে এটি অটোমেটিক্যালি হয়ে যায়।
variable তৈরি করা এবং তার মধ্যে data রাখার পদ্ধতি।
ভেরিয়েবলের মধ্যে ডাটা রাখার জন্য প্রথমে ভেরিয়েবল এর একটি প্রাসঙ্গিক নাম পছন্দ করতে হবে এবং তারপর সমান সমান (=) চিহ্ন দিয়ে তার ভ্যালুটি লিখতে হবে।
variable_name = variable_value
এটিকেই ভেরিয়েবল ডিক্লিয়ার করা বলে। মনে রাখতে হবে ডিক্লিয়ার করার সময় ভেরিয়েবল এর নাম সমান সমান (=) চিহ্নের বাঁদিকে হবে এবং ওই ভেরিয়েবল এর মধ্যে যে ডেটা রাখতে চাইছি সেটিকে সমান সমান চিহ্নের ডানদিকে লিখতে হবে।
প্রসঙ্গত বলে রাখা দরকার ভেরিয়েবল ডিক্লিয়ার করার সময় যে সমান সমান (=) চিহ্নটি ব্যবহার করছি সেটিকে প্রোগ্রামিং এর ভাষায় assignment operator বলে।
value পরিবর্তন এর সাথে সাথে variable এর type পরিবর্তন
বহু প্রোগ্রামিং ল্যাঙ্গুয়েজে ভেরিয়েবল এর ডেটা টাইপ নির্দিষ্ট হয় অর্থাৎ প্রোগ্রাম চলাকালীন সেই ভ্যারিয়েবল এর data type পরিবর্তন হয় না।
কিন্তু পাইথন প্রোগ্রামের ক্ষেত্রে ভেরিয়েবলের ডেটা টাই ডাইনামিক (dynamically typed) অর্থাৎ প্রোগ্রাম যখন রান করে সেই সময়ও ভেরিয়েবলের ডেটা টাই পরিবর্তন হতে পারে। এটি পাইথন প্রোগ্রামিং এর একটি বিশেষ বৈশিষ্ট্য এবং এর অনেক সুবিধা রয়েছে।
ধরা যাক কোন একটি প্রোগ্রাম শুরু হওয়ার সময় একটি ভেরিএবেল var ধরা হয়েছে। যার ভ্যালু তখন 100 এবং প্রোগ্রাম চলাকালীন এই variable টির ভ্যালু পরিবর্তন হয়ে একটি string বা নাম রাখা হলো সেই মুহূর্তে ভেরিএবেলটির ডেটাটাই পরিবর্তন হয়ে intiger থেকে string হয়ে গেল। এরপর একটি ভ্যালু 10.5 রাখা হলো তখন ওই ভেরিএবেলটির ডাটা টাইপ float হয়ে গেল। এভাবে বিভিন্ন ডেটা রাখার সঙ্গে সঙ্গে ভেরিয়েবেলটির ডেটা টাই পরিবর্তন হতে থাকে।
var = 100
print(var) # 100
print(type(var)) # <class 'int'>
# change var to string
var = "Yashna"
print(var) # Yashna
# printing its datatype
print(type(var)) # <class 'str'>
# change var to float
var = 10.5
print(var) # 10.5
# print its type
print(type(var)) # <class 'float'>
Number, String এবং List variables এর সম্পর্কে বিস্তারিত
Python প্রোগ্রামিং ল্যাঙ্গুয়েজে আমাদের প্রয়োজন মতন আমরা বিভিন্ন ধরনের ভ্যারিয়েবল তৈরি করতে পারি। আসুন এগুলি সম্পর্কে সঠিক ভাবে যেনে নেই।
Number variables
Number এমন একটি data type, যার সাহায্যে কোন একটি সংখ্যা বোঝায়। এবং variable এর মধ্যে টি ধরনের সংখ্যা রাখা হয়েছে তার ওপর নির্ভর করে variable এর data type।
বর্তমানে Python 3 তিন ধরনের number data type সমর্থন করে। যেমন
- int বা integer
- float বা decimal point
- complex
String variable
পাইথন প্রোগ্রামিং ল্যাঙ্গুয়েজে স্ট্রিম বলতে বোঝায় কোটেশন (“) চিহ্ন দ্বারা আবদ্ধ কতগুলি ক্যারেক্টার কে। এই কোটেশন চিহ্ন single বা double ( ‘ বা ” ) হতে পারে।
যেমন ‘Julia’ বা “Aftab”
List type variable
Python language এ যখন কিছু সংখ্যক ডাটা কে একত্রিত রাখার প্রয়োজন হয় তখন লিস্ট ডেটা টাইপ ভেরিয়েবল ব্যবহার করা হয়।
একটি লিস্ট ভেরিয়েবলের মধ্যে বিভিন্ন ধরনের ডেটা একত্রে একই সঙ্গে রাখা সম্ভব। অর্থাৎ আগে আমরা যে সমস্ত ডেটা টাইপ গুলি দেখেছি যেমন int, float, string ইত্যাদি এই সমস্ত গুলি কে একসঙ্গে একটি লিস্ট ভেরিয়েবল এর মধ্যে রাখা সম্ভব।