লিখেছেন: কাজী মুশফিকুর রহমান || সফটওয়্যার প্রকৌশলী, টেকনিয়াস (সফটওয়্যার নির্মাণ প্রতিষ্ঠান) || তারিখঃ 02 ডিসে., 2024
লিস্ট (List)
পাইথন কলেকশনের মধ্যে লিস্ট হচ্ছে সবচেয়ে ফ্লেক্সিবল (মিউটেবল বা পরিবর্তনযোগ্য) ডাটা টাইপ। এটি হচ্ছে অনেকগুলো আইটেমের (উপাদানের) একটি সমন্বয়, এবং যেকোন টাইপের অব্জেক্টের জন্য ব্যবহৃত হয় (যেমন: নাম্বার, স্ট্রিং ইত্যাদি)। তবে একটিমাত্র উপাদান নিয়ে ও একটি লিস্ট হতে পারে। সি প্রোগ্রামিংয়ের array এর সাথে এর বেশ মিল রয়েছে। এর উপাদান গুলোকে স্ট্রিংয়ের মতো এক্সেস (ট্রাভার্স) করা যায় (যেমন: স্লাইসিং এবং কনক্যাটিনেশন)। এর আরেকটি সুবিধা হচ্ছে, বড় একটি লিস্টকে স্লাইস করে (ভেঙে) ছোট্ট আরেকটি লিস্ট তৈরী করা যায়, যেমনি একটি সেট থেকে উপসেট তৈরী করা হয়। একে ট্রাভার্স করার সময় বাম থেকে ডানে মুভ করতে হয়, এবং এর উপাদান গুলোকে কাউন্ট করতে হয় ইনডেক্স নাম্বারের সাহায্যে। ইনডেক্স নাম্বার শুরু হয় 0 থেকে ( অর্থাৎ 0, 1, 2, 3……..)। আমরা এতে নতুন আইটেম যোগ করতে অথবা এর থেকে এক্সিস্টিং (বিদ্যমান) আইটেম ডিলিট করতে পারি।
ডিক্লেয়ারেশন (Declaration)
লিস্ট ডিফাইন করতে এর আইটেম গুলোকে থার্ড ব্রাকেটের মাঝে কমা দিয়ে পৃথক করে রাখতে হয়।
সিনট্যাক্স (Syntax):
ভ্যারিয়েবল = [ লিস্ট এর আইটেম বা উপাদানসমূহ ]
বা
ভ্যারিয়েবল = [ 'আইটেম ১', 'আইটেম ২', 'আইটেম ৩', 'আইটেম ৪' ………. ]
উদাহরণ:
animals = [ 'bird', 'cow', 'rat', 'snake', 'mouse' ]
এখন আমি ৫ টি প্রাণীর একটি লিস্ট তৈরী করব।
স্ট্রিং (String) দিয়ে লিস্ট তৈরী করা।
কোড:
animals = [ 'bird', 'cow', 'rat', 'snake', 'mouse' ]
print('animals: ', animals)
উপরের কোডের প্রথম লাইনে আমি ৫ টি প্রাণীর একটি লিস্ট [ 'bird', 'cow', 'rat', 'snake', 'mouse' ] তৈরী করেছি, যেখানে এর আইটেম গুলোকে কমা দিয়ে পৃথক করেছি। এখানে ৫ টি আইটেম রয়েছে যার প্রত্যেকটি একটি স্ট্রিং। দ্বিতীয় লাইনে লিস্টটি প্রিন্ট করেছি। এখন কোডটি রান করলে নিচের মত আউটপুট পাব।
আউটপুট:
animals: ['bird', 'cow', 'rat', 'snake', 'mouse']
নাম্বার (Number) দিয়ে লিস্ট তৈরী করা।
কোড:
numeric = [ 1, 2, 3, 4, 5 ]
print('numeric: ', numeric)
উপরের কোডের প্রথম লাইনে আমি ৫ টি নাম্বারের একটি লিস্ট [ 1, 2, 3, 4, 5 ] তৈরী করেছি, যেখানে এর আইটেম গুলোকে কমা দিয়ে পৃথক করেছি। এখানে ৫ টি আইটেম রয়েছে যার প্রত্যেকটি একটি নাম্বার। দ্বিতীয় লাইনে লিস্টটি প্রিন্ট করেছি। এখন কোডটি রান করলে নিচের মত আউটপুট পাব।
আউটপুট:
numeric: [1, 2, 3, 4, 5]
নাম্বার ও স্ট্রিং দিয়ে লিস্ট তৈরী করা।
কোড:
mixed = [ 1, 2, 'One', 'Two', 'Three' ]
print('mixed: ', mixed)
উপরের কোডের প্রথম লাইনে আমি একটি লিস্ট [ 1, 2, 'One', 'Two', 'Three' ] তৈরী করেছি, যেখানে এর আইটেম গুলোকে কমা দিয়ে পৃথক করেছি। এখানে ৫ টি আইটেম রয়েছে, যার প্রথম ২ টি হচ্ছে নাম্বার এবং পরের ৩ টি স্ট্রিং। দ্বিতীয় লাইনে লিস্টটি প্রিন্ট করেছি। এখন কোডটি রান করলে নিচের মত আউটপুট পাব।
আউটপুট:
mixed: [1, 2, 'One', 'Two', 'Three']
লিস্টের উপাদান গুলো এক্সেস (ব্যবহার) করা
এখন আমি লিস্টের উপাদান গুলো এক্সেস (ব্যবহার) করতে এর উপর ফর লুপ চালাব।
কোড:
animals = [ 'bird', 'cow', 'rat', 'snake', 'mouse', 'lion', 'tiger' ]
for animal in animals:
print(animal)
উপরের কোডের প্রথম লাইনে আমি একটি লিস্ট ডিফাইন করেছি, যেখানে ৭ টি আইটেম রয়েছে, এবং সবগুলো স্ট্রিং। দ্বিতীয় লাইনে animals লিস্টের উপর ফর লুপ চালিয়েছি। এখানে কাউন্টার ভ্যারিয়েবল হচ্ছে animal, এটি প্রত্যেক ইটারেশনে লিস্ট থেকে একটি আইটেম নিবে এবং পরে লাইনে সেটি প্রিন্ট করবে। লিস্টের আইটেম শেষ না হওয়া পর্যন্ত লুপটি চলতে থাকবে (৭ বার চলবে, সুতরাং ইটারেশন সংখ্যা ৭)। এখন কোডটি রান করলে নিচের মত আউটপুট পাব।
আউটপুট:
bird
cow
rat
snake
mouse
lion
tiger
কোডের ব্যাখ্যা
ইন্টারপ্রেটার এখান (লিস্ট ডিক্লেয়ারেশন) থেকে কোড পড়া শুরু করবে।
animals = [ 'bird', 'cow', 'rat', 'snake', 'mouse', 'lion', 'tiger' ]
ইটারেশন ১
animal = bird, bird প্রিন্ট হবে।
ইটারেশন ২
animal = cow, cow প্রিন্ট হবে।
ইটারেশন ৩
animal = rat, rat প্রিন্ট হবে।
ইটারেশন ৪
animal = snake, snake প্রিন্ট হবে।
ইটারেশন ৫
animal = mouse, mouse প্রিন্ট হবে।
ইটারেশন ৬
animal = lion, lion প্রিন্ট হবে।
ইটারেশন ৭
animal = tiger, tiger প্রিন্ট হবে।
0