Python Tricks || পাইথন ট্রিকস(পর্ব-দুই) | yusuff.dev

Python Tricks || পাইথন ট্রিকস(পর্ব-দুই)

April 21, 2019, 9:27 p.m.

Author-Abu Yusuf

Image

list.append() এবং list.extend() এর মধ্যে পার্থক্যঃ
ধরুন আমাদের একটা লিস্ট আছে এবং আমাদের সেই লিস্টে অনেকগুলো ইলিমেন্ট একসাথে অ্যাড করতে হবে।

তো আমরা সাধারণত লিস্টে ইলিমেন্ট এড করতে append() ফাংশন আর insert() ফাংশন ব্যাবহার করে থাকিঃ

append() ফাংশন মূলত লিস্টে একটা করে আইটেম এড করতে ইউজ করা হয়। আর insert() ফাংশন কোন নির্দিষ্ট পজিশনেে কোন নির্দিষ্ট আইটেম অ্যাড করতে ব্যাবহার করা হয়ে থাকে।

>>> x = [1, 2, 3]
>>> x.append(5)
>>> x
[1, 2, 3, 5]

>>> x.append([4, 6])   // যেহেতু append() ফাংশন একটার বেশি আইটেম অ্যাড করতে পারে না তাই আমরা একটা লিস্টই অ্যাড করে দিলাম 
>>> x
[1, 2, 3, 5, [4, 6]]   // কিন্তু ব্যাপারটা মোটেই ভালো হলো না।একটা লিস্টের ভিতর আরেকটা লিস্ট। 

>>> x.insert(1, 8)    // এক নাম্বার পজিশনে ভেলুু ৮ রাখতে চাই তাই সেটা বলে দিলাম(১,৮)
>>> x
[1, 8, 3, 5, [4, 5]]

আমরা যেটা চাচ্ছিলাম সেটা হলো না এখনো। সেই সমস্যা সমাধান করতে আমরা extend() ফাংশন ব্যাবহার করে থাকিঃ

>>> y = [1, 2, 3]
>>> y.extend([4, 5])
>>> y
[1, 2, 3, 4, 5]
>>> y.extend([7,9,3,6,5,44,22,99,66])
>>> y
[1, 2, 3, 4, 5, 7, 9, 3, 6, 5, 44, 22, 99, 66]

সবচেয়ে ভালো হতো যদি আমরা সরাসরি দুইটা লিস্ট যোগ করে দিতে পারতামঃ

>>> m = list([4,6,9])
>>> m
[4, 6, 9]
>>> z = m + [5,6,9]
>>> z
[4, 6, 9, 5, 6, 9]

কিন্তু লিস্টের বিল্টিন ফাংশন ব্যাবহার করাই শ্রেয়, স্ট্যান্ডার্ড। কারণ লিস্ট হচ্ছে পাইথনের বিল্টিন ডাটা স্ট্রাকচার। সেক্ষেত্রে ডাটা ইন্সার্ট , আপডেট, রিমুভ, ডিলিট এইসব অপারেশন গুলো আমরা লিস্টের বিল্টিন ফাংশন ব্যাবহার করেই করি।