কিভাবে পাইথনে তালিকা সাজানো যায়

How Sort Lists Python



এই নিবন্ধটি পাইথনে তালিকা বাছাইয়ের একটি নির্দেশিকা কভার করবে। পাইথন লিস্ট অবজেক্ট হল এক বা একাধিক কমা দ্বারা পৃথক করা আইটেমের সংগ্রহ। এটি একটি পুনরাবৃত্তিযোগ্য বস্তু এবং এর উপাদানগুলি লুপ স্টেটমেন্ট এবং অন্যান্য এক্সপ্রেশন ব্যবহার করে তালিকাতে পুনরাবৃত্তি করে অ্যাক্সেস করা যায়। আপনি সাজানো এবং সাজানো পদ্ধতি ব্যবহার করে একটি পাইথন তালিকা বাছাই করতে পারেন, উভয়ই নিবন্ধে ব্যাখ্যা করা হয়েছে। এই নিবন্ধের সমস্ত কোড নমুনা উবুন্টু 21.04 এ পাইথন 3.9.5 দিয়ে পরীক্ষা করা হয়েছে।

সাজানোর পদ্ধতি

সাজানোর পদ্ধতিটি একটি স্থানে তালিকা সাজায়। অন্য কথায়, এটি তালিকা বস্তুটিকে সংশোধন করবে যা আপনি তার উপাদানটি সাজাতে এবং পুনর্বিন্যাস করতে যাচ্ছেন। যদি আপনার আসল তালিকার প্রয়োজন না হয় এবং তালিকায় তার উপাদানগুলির ক্রম পরিবর্তনের কথা মনে না হয়, তাহলে এটি একটি তালিকা সাজানোর জন্য পাইথনের সবচেয়ে কার্যকর পদ্ধতি। এই উদাহরণ বিবেচনা করুন:







দ্য= [2, 8, 6, 4]

দ্য.সাজান()

ছাপা (দ্য)

উপরের কোড নমুনা চালানোর পরে, আপনাকে নিম্নলিখিত আউটপুট পেতে হবে:



[2, 4, 6, 8]

কোড নমুনার প্রথম বিবৃতি একটি তালিকা সংজ্ঞায়িত করে। পরবর্তী, তালিকার উপর সাজানোর পদ্ধতি বলা হয়। যখন আপনি তালিকাটি মুদ্রণ করেন, আপনি দেখতে পারেন যে মূল তালিকার ক্রম পরিবর্তন করা হয়েছে।



ডিফল্টরূপে, পাইথন আরোহী ক্রমে একটি তালিকা সাজায়। আপনি যদি ক্রমানুসারে একটি তালিকা সাজাতে চান, তাহলে নীচের কোড নমুনায় দেখানো বিপরীত পদ্ধতি ব্যবহার করুন:





দ্য= [2, 8, 6, 4]

দ্য.সাজান()

দ্য.বিপরীত()

ছাপা (দ্য)

উপরের কোড নমুনা চালানোর পরে, আপনাকে নিম্নলিখিত আউটপুট পেতে হবে:

[8, 6, 4, 2]

বিপরীত পদ্ধতিটি একটি নতুন তালিকা তৈরি না করেও একটি পাইথন তালিকা পরিবর্তন করে।



যদি আপনার তালিকায় স্ট্রিং উপাদান থাকে, তার উপর সাজানোর পদ্ধতিটি কল করলে এটি বর্ণানুক্রমিকভাবে অর্ডার করবে যেখানে প্রতীক এবং সংখ্যাগুলি প্রথমে অর্ডার করা হয়। নীচের কোড নমুনা দেখুন:

দ্য= [এর, 'প্রতি', 'সঙ্গে', '4', '#']

দ্য.সাজান()
ছাপা (দ্য)

উপরের কোড নমুনা চালানোর পরে, আপনাকে নিম্নলিখিত আউটপুট পেতে হবে:

['#', '4', 'প্রতি', এর, 'সঙ্গে']

আপনি স্ট্রিং উপাদান ধারণকারী তালিকায় বিপরীত পদ্ধতিও ব্যবহার করতে পারেন।

দ্য= [এর, 'প্রতি', 'সঙ্গে', '4', '#']

দ্য.সাজান()

দ্য.বিপরীত()

ছাপা (দ্য)

উপরের কোড নমুনা চালানোর পরে, আপনাকে নিম্নলিখিত আউটপুট পেতে হবে:

['সঙ্গে', এর, 'প্রতি', '4', '#']

সাজানো পদ্ধতি

সাজানো পদ্ধতি একটি পাইথন তালিকাও সাজায়, একইভাবে সাজানোর পদ্ধতির মতো। যাইহোক, আসল তালিকা পরিবর্তনের পরিবর্তে, এটি একটি নতুন তালিকা ফেরত দেয় যাতে আপনার মূল তালিকাটি যদি আপনি এটি পুনরায় ব্যবহার করতে চান তবে তা অপ্রকাশিত থাকে। নীচের কোডটি বিবেচনা করুন:

তালিকা 1= [এর, 'প্রতি', 'সঙ্গে', '4', '#']

তালিকা 2= সাজানো(তালিকা 1)

ছাপা (তালিকা 1,তালিকা 2)

উপরের কোড নমুনা চালানোর পরে, আপনাকে নিম্নলিখিত আউটপুট পেতে হবে:

[এর, 'প্রতি', 'সঙ্গে', '4', '#'] ['#', '4', 'প্রতি', এর, 'সঙ্গে']

আপনি আউটপুটে দেখতে পারেন যে list1 অক্ষত আছে এবং list2 এখন সাজানো উপাদান আছে। আপনি তালিকা 2 এর বিপরীত পদ্ধতি ব্যবহার করতে পারেন এর অর্ডারিং পদ্ধতি পরিবর্তন করতে।

বিপরীত যুক্তি

ক্রমানুসারে সাজানো তালিকা পেতে আপনি সাজানোর এবং সাজানোর পদ্ধতিতে বিপরীত ফাংশনের বিকল্প হিসেবে বিপরীত যুক্তি ব্যবহার করতে পারেন। সাজানোর ক্রম পরিবর্তন করার জন্য কেবল এটি একটি সত্য মান সরবরাহ করুন:

তালিকা 1= [এর, 'প্রতি', 'সঙ্গে', '4', '#']

তালিকা 2= সাজানো(তালিকা 1,বিপরীত=সত্য)

ছাপা (তালিকা 1,তালিকা 2)

উপরের কোড নমুনা চালানোর পরে, আপনাকে নিম্নলিখিত আউটপুট পেতে হবে:

[এর, 'প্রতি', 'সঙ্গে', '4', '#'] ['সঙ্গে', এর, 'প্রতি', '4', '#']

তালিকার উপাদানগুলি সাজানোর জন্য আপনার নিজস্ব যুক্তি নির্দিষ্ট করার জন্য কী ফাংশন ব্যবহার করা

সাজানো এবং সাজানো উভয় পদ্ধতিতে, আপনি একটি অতিরিক্ত কী যুক্তি নির্দিষ্ট করতে পারেন যা একটি কলযোগ্য ফাংশনকে তার মান হিসাবে গ্রহণ করে। এই মূল যুক্তিটি অন্তর্নির্মিত পাইথন মডিউল থেকে একটি বিদ্যমান ফাংশন বরাদ্দ করা যেতে পারে অথবা আপনি কাস্টম যুক্তি দিয়ে আপনার নিজস্ব ফাংশন সরবরাহ করতে পারেন। নীচের কোড নমুনা দেখুন:

তালিকা 1= ['abcde', 'xyz', 'ijkl']

তালিকা 2= সাজানো(তালিকা 1,চাবি=লেন)

ছাপা (তালিকা 1,তালিকা 2)

তালিকা 1।সাজান(চাবি=লেন)

ছাপা (তালিকা 1)

উপরের কোড নমুনা চালানোর পরে, আপনাকে নিম্নলিখিত আউটপুট পেতে হবে:

['abcde', 'xyz', 'ijkl'] ['xyz', 'ijkl', 'abcde']

['xyz', 'ijkl', 'abcde']

কোডের নমুনা সাজানো এবং সাজানোর পদ্ধতি উভয় ক্ষেত্রেই মূল যুক্তির ব্যবহার ব্যাখ্যা করে। এটিতে সরবরাহ করা ফাংশনটিকে বলা হয় লেন যা একটি স্ট্রিং বস্তুর দৈর্ঘ্য বা পুনরাবৃত্তিযোগ্যতা নির্ধারণ করে। ফাংশন বা কলযোগ্য মূলত একটি যুক্তি গ্রহণ করা উচিত। আপনি ধনুর্বন্ধনী ব্যবহার না করে এটি মূল যুক্তিতে বরাদ্দ করুন। মূল যুক্তিতে সরবরাহ করা কলযোগ্য ফাংশন তালিকার প্রতিটি উপাদানকে বলা হয়। এই কলযোগ্য পদ্ধতি থেকে ফিরে আসা মানগুলি তালিকা সাজানোর জন্য একটি কী হিসাবে ব্যবহার করা হয়। অতএব, মূল যুক্তিতে লেন ফাংশন সরবরাহ করা তালিকার উপাদানগুলিকে তাদের দৈর্ঘ্যের ক্রমে সাজায়, অর্থাৎ ছোট থেকে দীর্ঘতম। আগেই বলা হয়েছে, আপনি সবসময় সাজানোর পদ্ধতিটি বিপরীত করতে বিপরীত পদ্ধতি ব্যবহার করতে পারেন।

আপনি আপনার নিজস্ব কাস্টম ফাংশন বা ওয়ান-লাইনার ল্যাম্বদা ফাংশন ব্যবহার করতে পারেন যা একক অভিব্যক্তির মান ফেরত দেয়। নীচের কোড নমুনার দিকে নজর দিন যেখানে একটি তালিকায় ফলের গুঁড়ির বর্তমান তালিকাটির টুপল রয়েছে:

তালিকা 1= [('আম', 99), ('কমলা', ৫১), ('কলা', 76)]

তালিকা 1।সাজান(চাবি=ল্যাম্বদাজায়: জায়[])

ছাপা (তালিকা 1)

উপরের কোড নমুনা চালানোর পরে, আপনাকে নিম্নলিখিত আউটপুট পেতে হবে:

[('কমলা', ৫১), ('কলা', 76), ('আম', 99)]

ল্যাম্বডা ফাংশনটি একটি আর্গুমেন্ট ইনভেন্টরির সাথে সরবরাহ করা হয়, যা টুপল আকারে তালিকার প্রতিটি উপাদান। এটি তারপরে প্রতিটি টুপলের দ্বিতীয় উপাদানটি কী হিসাবে (সূচক 1 এ) ফেরত দেয়। সাজানোর ফাংশন তারপর তার দ্বিতীয় উপাদান দ্বারা আরোহী ক্রমে সব tuples বাছাই। সাজানোর ক্রমকে বিপরীত করতে আপনি শেষ ফলাফলে বিপরীত ফাংশন বা বিপরীত যুক্তি ব্যবহার করতে পারেন।

উপসংহার

এটি এমন কিছু উপায় যা ব্যবহার করে আপনি পাইথনে পুনরাবৃত্তিযোগ্য তালিকার বিষয়বস্তু সাজাতে পারেন। মূল যুক্তিটি আপনাকে আপনার নিজস্ব কাস্টম বাছাই যুক্তি লিখতে দেয়, অ্যাপ্লিকেশনগুলির জন্য উপযুক্ত যা অন্তর্নির্মিত সাজানোর পদ্ধতির চেয়ে আলাদা প্রয়োজন হতে পারে।