লিস্ট আপডেট করা (Update The List)

লিখেছেন: কাজী মুশফিকুর রহমান || সফটওয়্যার প্রকৌশলী, টেকনিয়াস (সফটওয়্যার নির্মাণ প্রতিষ্ঠান) || তারিখঃ 03 মে, 2024


রিয়েল লাইফে ডাটা ম্যানেজ করার ক্ষেত্রে কখনো কখনো  লিস্ট আপডেট করার প্রয়োজন হয়। এক্ষেত্রে আমরা লিস্ট এর শুরুতে, মাঝে অথবা শেষে নতুন আইটেম যোগ করতে পারি। আবার ইনডেক্স নাম্বার ধরে নির্দিষ্ট পজিশনে নতুন আইটেম আপডেট (সংযোজন বা বিযোজন) করা যায়। তবে এক্ষেত্রে সেই ইনডেক্সের পুরাতন ভ্যালু নতুন ভ্যালু দ্বারা রিপ্লেস (প্রতিস্থাপিত) হয়ে যায়। যে এলিমেন্টটি আপনি আপডেট করতে চান যদি তার ইনডেক্স নাম্বার না জানা থাকে, তাহলে কম্পেয়ার (তুলনা) করতে লুপ চালাতে পারেন এবং তারপর চেঞ্জ বা আপডেট করুন। append() পাইথনের একটি বিল্ট-ইন ফাংশন, যা লিস্টের শেষে নতুন উপাদান যোগ করার অনুমতি দেয়। লিস্ট স্লাইসিং (List Slicing) নামে একটি কনসেপ্ট রয়েছে, যার মাধ্যমে দুই বা ততোধিক এলিমেন্ট আপডেট করা যায়। এখন আমি দেখাব যে, ইনডেক্স নাম্বার ব্যবহার করে কিভাবে লিস্ট আপডেট করতে হয়।

 

ইনডেক্স পজিশন ব্যবহার করে লিস্ট আপডেট করা

সিন্টেক্স:

লিস্টের নাম [ ইনডেক্স নাম্বার ] = নতুন ভ্যালু

প্রথমে লিস্টের নাম, তারপর থার্ড ব্রাকেটের মধ্যে নির্দিষ্ট ইনডেক্স নাম্বার, তারপর ‘=’ চিহ্ন, তারপর নতুন ভ্যালু দিতে হবে।

কোড:

animals = [ 'bird', 'cow', 'rat', 'snake', 'mouse', 'lion', 'tiger' ]

print('animals: ', animals)

print('add dear at 1 index of the list animals ')

animals[1]= 'dear'

print('animals: ', animals)

 

উপরের কোডের প্রথম লাইনে আমি ৭ টি প্রাণীর একটি লিস্ট [ 'bird', 'cow', 'rat', 'snake', 'mouse', 'lion', 'tiger' ] তৈরী করেছি। দ্বিতীয় লাইনে লিস্টটি প্রিন্ট করেছি। তৃতীয় লাইনে একটি স্ট্রিং প্রিন্ট করেছি। চতুর্থ লাইনে লিস্টটি আপডেট করেছি এবং, 1 নাম্বার ইনডেক্সে নতুন ভ্যালু 'dear' যোগ করেছি। তাই এই ইন্ডেক্সের পুরাতন ভ্যালু 'cow' রিপ্লেস হয়ে সেখানে 'dear'  বসে গেছে। পঞ্চম লাইনে আপডেট লিস্টটি প্রিন্ট করেছি। এখন কোডটি রান করলে নিচের মত আউটপুট পাব।

আউটপুট:

animals:  ['bird', 'cow', 'rat', 'snake', 'mouse', 'lion', 'tiger']

add dear at 1 index of the list animals

animals:  ['bird', 'dear', 'rat', 'snake', 'mouse', 'lion', 'tiger']

 

 

append() মেথড ব্যবহার করে লিস্ট আপডেট করা

append() পাইথনের একটি বিল্ট-ইন মেথড, যা লিস্টের শেষে নতুন একটি উপাদান বা আইটেম যোগ করে।

সিন্টেক্স:

লিস্টের নাম.append( নতুন ভ্যালু )

প্রথমে লিস্টের নাম, তারপর ডট চিহ্ন, তারপর append() মেথডের ফার্স্ট ব্রাকেটের মধ্যে নতুন ভ্যালু দিতে হবে।

 

 

এখন আমরা পাইথন কোডে append() মেথডের ব্যবহার দেখব।

কোড:

animals = [ 'bird', 'cow', 'rat', 'snake', 'mouse', 'lion', 'tiger' ]

print('add bear to the list animals')

animals.append('bear')

print('animals: ', animals)

 

উপরের কোডের প্রথম লাইনে আমি ৭ টি প্রাণীর একটি লিস্ট [ 'bird', 'cow', 'rat', 'snake', 'mouse', 'lion', 'tiger' ] তৈরী করেছি। দ্বিতীয় লাইনে একটি স্ট্রিং প্রিন্ট করেছি। তৃতীয় লাইনে append() মেথড ব্যবহার করে বিদ্যমান লিস্টের শেষে নতুন একটি ভ্যালু 'bear' যোগ করেছি। চতুর্থ লাইনে আপডেট লিস্টটি প্রিন্ট করেছি। এখন কোডটি রান করলে নিচের মত আউটপুট পাব।

আউটপুট:

add bear to the list animals

animals:  ['bird', 'dear', 'rat', 'snake', 'mouse', 'lion', 'tiger', 'bear']

 

 

লিস্টের মাল্টিপল আইটেম পরিবর্তন (আপডেট) করা

ইনডেক্স পজিশনের মাধ্যমে একসাথে লিস্টের অনেক গুলো উপাদান পরিবর্তন (আপডেট)  করা যায়। এক্ষেত্রে স্লাইসিং (List slicing) পদ্ধতি  ব্যবহৃত হয়। আপনি বিদ্যমান লিস্টের যে উপাদান গুলি পরিবর্তন (আপডেট) করতে চান, তাদের শুরু ও শেষ ইনডেক্স নাম্বার বলে দিবেন এবং সে স্থানে যে নতুন উপাদান বসবে সেগুলো উল্লেখ করবেন। তাহলে পুরাতন আইটেমগুলি রিপ্লেস (প্রতিস্থাপিত) হয়ে সে স্থানে নতুন ভ্যালু বসে যাবে। নিচে এর ব্যবহার পদ্ধতি দেখানো হলো।

সিন্টেক্স:

লিস্টের নাম [ ইনডেক্স নাম্বার ] = [ একাধিক নতুন আইটেম ]

প্রথমে লিস্টের নাম, তারপর থার্ড ব্রাকেটের মধ্যে ইনডেক্স নাম্বার, তারপর ‘=’ চিহ্ন, তারপর থার্ড ব্রাকেটের মধ্যে  একাধিক নতুন আইটেম দিতে হবে।

উদাহরণ:

কোড:

animals = [ 'bird', 'cow', 'rat', 'snake', 'mouse', 'lion', 'tiger' ]

print('animals: ', animals)

animals[1:5]= ['bares', 'sheep']

print('animals: ', animals)

 

উপরের কোডের প্রথম লাইনে আমি ৭ টি প্রাণীর একটি লিস্ট [ 'bird', 'cow', 'rat', 'snake', 'mouse', 'lion', 'tiger' ] তৈরী করেছি। দ্বিতীয় লাইনে লিস্টটি প্রিন্ট করেছি। তৃতীয় লাইনে স্লাইসিং (List slicing) পদ্ধতি ব্যবহার করে বিদ্যমান লিস্টের 1 থেকে 5 পর্যন্ত ইনডেক্স পজিশনে নতুন আরেকটি লিস্ট ['bares', 'sheep'] স্থাপন করেছি। animals[1:5], এখানে 1 শুরুর ইনডেক্স পজিশন এবং 5 শেষ ইনডেক্স পজিশন নির্দেশ করে। অর্থাৎ এক্ষেত্রে 1 থেকে 5 পর্যন্ত ইনডেক্সের আইটেমগুলি রিপ্লেস (প্রতিস্থাপিত) হয়ে সে স্থানে নতুন লিস্টটি বসে যাবে, তখন ফাইনাল লিস্ট হবে: ['bird', 'bares', 'sheep', 'lion', 'tiger'] চতুর্থ লাইনে আপডেট লিস্টটি প্রিন্ট করেছি। এখন কোডটি রান করলে নিচের মত আউটপুট পাব।

আউটপুট:

animals:  ['bird', 'dear', 'rat', 'snake', 'mouse', 'lion', 'tiger']

animals:  ['bird', 'bares', 'sheep', 'lion', 'tiger']