পাইথন zip() ফাংশন পুনরাবৃত্তিযোগ্য আইটেমগুলি গ্রহণ করে এবং সেগুলিকে একক টিপলে একত্রিত করে। ফলস্বরূপ মান হল একটি জিপ অবজেক্ট যা জোড়া পুনরাবৃত্তের সঞ্চয় করে। আপনি zip() ফাংশনের মাধ্যমে তালিকা, টিপলস, সেট বা অভিধান পাস করতে পারেন।
পাইথনে অনেকগুলি অন্তর্নির্মিত ফাংশন রয়েছে যা কোডারকে ডেটা লুপ করার অনুমতি দেয়। এই ফাংশনগুলির মধ্যে একটি হল পাইথন জিপ। zip() ফাংশন একটি পুনরাবৃত্ত তৈরি করে যা দুটি বা ততোধিক ডেটা উত্স থেকে উপাদানগুলিকে একটিতে একত্রিত করবে৷
এই টিউটোরিয়ালে, আমরা পাইথন zip()-এর মূল বিষয়গুলিকে ভেঙে দিতে যাচ্ছি। এছাড়াও আমরা আলোচনা করব কিভাবে একটি জিপের উপর পুনরাবৃত্তি করা যায় এবং কিভাবে একটি জিপ করা বস্তুকে আনজিপ করা যায়।
পাইথন পুনরাবৃত্তি রিফ্রেশার
পাইথনে, আমরা i শব্দটি ব্যবহার করি terate যখন একটি প্রোগ্রাম একটি তালিকার মাধ্যমে চলছে তা বর্ণনা করতে। উদাহরণস্বরূপ, বলুন আপনার একটি এর জন্য আছে৷ লুপ যা একটি কোম্পানি পরিচালনা করে এমন প্রতিটি শাখার নাম প্রিন্ট করে। আমরা বলব যে আমাদের প্রোগ্রামটি পুনরাবৃত্তি নামের তালিকার মাধ্যমে।
একটি পুনরাবৃত্ত , অন্যদিকে, একটি বস্তু যা তার সদস্য আইটেমগুলি পৃথকভাবে ফেরত দিতে পারে। অ্যারেগুলি পুনরাবৃত্তিযোগ্য কারণ আপনি এর জন্য ব্যবহার করে প্রতিটি আইটেম পৃথকভাবে মুদ্রণ করতে পারেন লুপ।
পাইথন জিপ ফাংশন
zip() ফাংশন দুই বা ততোধিক পুনরাবৃত্তির বিষয়বস্তুকে একত্রিত করে। zip() একটি জিপ বস্তু প্রদান করে। এটি টিপলগুলির একটি পুনরাবৃত্তিকারী যেখানে আপনি আর্গুমেন্ট হিসাবে পাস করা সমস্ত মান জোড়া হিসাবে সংরক্ষণ করা হয়৷
পাইথনের zip() ফাংশন একটি পুনরাবৃত্তিযোগ্য - যেমন একটি তালিকা, টিপল, সেট, বা অভিধান - একটি যুক্তি হিসাবে নেয়। ফাংশনটি টিপলগুলির একটি তালিকা তৈরি করবে যাতে আপনি ফাংশনে পাস করা প্রতিটি পুনরাবৃত্তিযোগ্য উপাদানগুলি ধারণ করে৷
zip() ফাংশনের সিনট্যাক্স নিম্নরূপ:
81% অংশগ্রহণকারী বলেছেন যে তারা বুটক্যাম্পে যোগ দেওয়ার পরে তাদের প্রযুক্তিগত কাজের সম্ভাবনা সম্পর্কে আরও আত্মবিশ্বাসী বোধ করেছেন। আজই একটি বুটক্যাম্পের সাথে মিলিত হন৷
৷গড় বুটক্যাম্প গ্র্যাড একটি বুটক্যাম্প শুরু করা থেকে শুরু করে তাদের প্রথম চাকরি খোঁজা পর্যন্ত ক্যারিয়ারের পরিবর্তনে ছয় মাসেরও কম সময় কাটিয়েছে।
zip(iterable1, iterable2, ...)
আপনি যতগুলি চান ততগুলি পুনরাবৃত্তিযোগ্য অন্তর্ভুক্ত করতে পারেন। zip() ফাংশনে আর্গুমেন্ট হিসাবে আপনি যে পুনরাবৃত্তগুলি একত্রিত করতে চান তা আপনাকে অবশ্যই নির্দিষ্ট করতে হবে৷
পুনরাবৃত্তিযোগ্য বস্তুগুলি সম্পূর্ণরূপে জিপ না হওয়া পর্যন্ত zip() পদ্ধতিটি কার্যকর করা অব্যাহত থাকে। এটি ঘটে যখন পুনরাবৃত্তিগুলি নিঃশেষ হয়ে যায়। অন্য কথায়, zip() পদ্ধতি বন্ধ হয়ে যায় যখন সম্ভাব্য সব জোড়া তৈরি করা হয়।
জিপ পাইথন উদাহরণ
ধরা যাক আপনার কাছে দুটি পাইথন তালিকা আছে। একটি তালিকায় কর্মচারীর নাম এবং অন্য তালিকায় কর্মচারীর নম্বর রয়েছে। আপনি উভয় তালিকাকে একত্রিত করতে চান টিপলের একটি অ্যারের মধ্যে। এটি আপনাকে কর্মচারীর নাম এবং সংখ্যা পাশাপাশি সংরক্ষণ করতে দেবে৷
৷আমরা zip() ব্যবহার করতে পারি আমাদের দুটি তালিকা একত্রিত করার ফাংশন। এখানে একটি উদাহরণ প্রোগ্রাম যা এই ডেটা মার্জ করবে:
employee_numbers = [2, 9, 18, 28] employee_names = ["Candice", "Ava", "Andrew", "Lucas"] zipped_values = zip(employee_names, employee_numbers) zipped_list = list(zipped_values) print(zipped_list)
আমাদের জিপ ফাংশন নিম্নলিখিতগুলি প্রদান করে:
[('Candice', 2), ('Ava', 9), ('Andrew', 18), ('Lucas', 28)]
আমাদের প্রোগ্রাম টিপল আইটেমগুলির একটি অ্যারে তৈরি করেছে। প্রতিটি টিপলে একজন কর্মচারীর নাম এবং সংশ্লিষ্ট কর্মচারীর নম্বর থাকে।
আমাদের কোডের প্রথম দুটি লাইনে, আমরা ভেরিয়েবল ঘোষণা করি যা আমাদের কর্মচারীর নম্বর এবং কর্মচারীর নাম সংরক্ষণ করে।
এরপর, আমরা একটি zip() সম্পাদন করি ফাংশন এই ফাংশনটি আমাদের দুটি তালিকাকে একত্রিত করে এবং টিপলের একটি নতুন অ্যারে তৈরি করে৷
আমরা আমাদের জিপ আইটেমকে একটি তালিকায় রূপান্তর করি। কারণ zip() ফাংশন একটি জিপ অবজেক্ট রিটার্ন করে। আমরা একটি জিপ বস্তুর উপর পুনরাবৃত্তি করতে পারেন. যাইহোক, আমরা কনসোলে একটি জিপ মুদ্রণ করতে পারি না এবং এর বিষয়বস্তু একটি পাঠযোগ্য আকারে দেখতে পারি না। আমাদের অবশ্যই আমাদের জিপ অবজেক্টকে একটি তালিকায় রূপান্তর করতে হবে, যাতে আমরা কনসোল থেকে জিপের বিষয়বস্তু দেখতে পারি।
আমরা বলতে পারি যে আমাদের zipped_values একটি zip() আমাদের উপরের প্রোগ্রামে নিম্নলিখিত কোড যোগ করে আইটেম:
print(type(zipped_values))
আমাদের কোড নিম্নলিখিত জিপ করা ক্লাস প্রদান করে:
<class 'zip'>
উপরের উদাহরণে, আমরা দুটি আইটেম একসাথে জিপ করেছি। যাইহোক, যদি আমাদের আরও বেশি থাকে যে আমরা জিপ করতে চাই, আমরা তাও করতে পারতাম। আমাদের zip()-এ আইটেমগুলির আরেকটি তালিকা পাস করাই আমরা একমাত্র পরিবর্তন করব ফাংশন।
পাইথনে জিপ ব্যবহার করে ইটারেবলের উপর লুপ করা
zip() ফাংশন একটি পুনরাবৃত্তিকারী প্রদান করে। এর মানে আমরা প্রতিটি জিপ করা আইটেমের বিষয়বস্তু পৃথকভাবে দেখতে পারি।
একাধিক পুনরাবৃত্তির সাথে কাজ করা zip()-এর জন্য সবচেয়ে জনপ্রিয় ব্যবহারের ক্ষেত্রে একটি। পাইথনে ফাংশন। উদাহরণস্বরূপ, আপনি যদি একাধিক তালিকার মধ্য দিয়ে যেতে চান, তাহলে আপনি zip() ব্যবহার করতে চাইতে পারেন ফাংশন।
আসুন আমাদের কর্মচারী_সংখ্যা এবং কর্মচারী_নাম উভয় তালিকার উপর পুনরাবৃত্তি করতে zip() ফাংশনটি ব্যবহার করি:
employee_numbers = [2, 9, 18, 28] employee_names = ["Candice", "Ava", "Andrew", "Lucas"] for name, number in zip(employee_names, employee_numbers): print(name, number)
আমাদের কোড নিম্নলিখিত প্রদান করে:
Candice 2 Ava 9 Andrew 18 Lucas 28
আমাদের প্রোগ্রাম টিপলের তালিকার মাধ্যমে পুনরাবৃত্তি করে যা zip() রিটার্ন করে, এবং তাদের দুটি মানের মধ্যে ভাগ করে:নাম এবং সংখ্যা।
এটি আমাদের জন্য একসাথে একাধিক পুনরাবৃত্তিযোগ্য বস্তুর মাধ্যমে পুনরাবৃত্তি করা সহজ করে তোলে। আমরা এখন প্রতিটি কর্মচারীর নাম তাদের নিজ নিজ কর্মচারী নম্বরের সাথে দেখতে পারি। আমরা যদি চাই, আমরা এটি ব্যবহার করে তিন বা তার বেশি পুনরাবৃত্তিযোগ্য বস্তুর মাধ্যমে পুনরাবৃত্তি করতে পারি।
পাইথনে মান আনজিপ করুন
আমাদের কোডে, আমরা বিভিন্ন ধরণের ডেটা জিপ করেছি। কিন্তু কিভাবে আমরা তার আগের ফর্ম তথ্য পুনরুদ্ধার করব? যদি আপনার কাছে টিপল বা জিপ করা মানগুলির একটি তালিকা থাকে যা আপনি ভাগ করতে চান, আপনি zip() ব্যবহার করতে পারেন ফাংশন আনপ্যাকিং অপারেটর। এটি একটি তারকাচিহ্ন * zip() এর সাথে একত্রে ব্যবহৃত হয় ফাংশন।
এখানে zip() এর একটি উদাহরণ অ্যাকশনে অপারেটর আনপ্যাক করা হচ্ছে:
employees_zipped = [('Candice', 2), ('Ava', 9), ('Andrew', 18), ('Lucas', 28)] employee_names, employee_numbers = zip(*employees_zipped) print(employee_names) print(employee_numbers)
আমাদের কোড নিম্নলিখিত আউটপুট প্রদান করে:
('Candice', 'Ava', 'Andrew', 'Lucas') (2, 9, 18, 28)
আমাদের কোডের প্রথম লাইনে, আমরা একটি ভেরিয়েবলকে সংজ্ঞায়িত করি যাতে টিপলের একটি তালিকা অন্তর্ভুক্ত থাকে। তারপর, পরবর্তী লাইনে, আমরা দুটি ভেরিয়েবল সংজ্ঞায়িত করব। এই ভেরিয়েবলগুলি হল employee_names এবং কর্মচারী_সংখ্যা। আমরা আমাদের আনজিপ ফাংশন থেকে এই ভেরিয়েবলের মানগুলি বরাদ্দ করি৷
৷আনজিপ ফাংশন হল একটি জিপ ফাংশন যা আমাদের কর্মচারীদের_জিপ করে পরিবর্তনশীল জিপ আনপ্যাক করে আনপ্যাকিং অপারেটর ব্যবহার করে * . আমাদের উপরের উদাহরণে, আমরা আমাদের দুটি নতুন ভেরিয়েবল প্রিন্ট আউট করি যাতে আমাদের কর্মচারীর নাম এবং কর্মচারী নম্বর রয়েছে৷
উপসংহার
zip() ফাংশন একটি ইনপুট হিসাবে পুনরাবৃত্তিযোগ্য বস্তু গ্রহণ করে এবং একটি zip() অবজেক্টে তাদের একত্রিত করে। এই zip() অবজেক্ট প্রতিটি পুনরাবৃত্তিযোগ্য ইনপুট থেকে পাশাপাশি মান প্রদর্শন করে। আপনার যদি দুটি বা ততোধিক অ্যারে বা টিপল থাকে যা আপনি একটিতে একত্রিত করতে চান তবে এটি কার্যকর হতে পারে৷
আমরা আলোচনা করেছি কিভাবে zip() ব্যবহার করতে হয় শূন্য বা এক ইনপুট সহ ফাংশন। আপনি zip() ব্যবহার করতে পারেন পুনরাবৃত্তি করার জন্য লুপ করুন এবং আপনি ইতিমধ্যে জিপ করা ডেটা আনজিপ করতে পারেন। আপনি এখন পাইথন zip()-এর মাস্টার হওয়ার পথে ফাংশন।
পাইথন সফ্টওয়্যার বিকাশের ভাষা শেখার বিষয়ে আরও টিপস এবং পরামর্শের জন্য আমাদের পাইথনে কীভাবে কোড করবেন নির্দেশিকা পড়ুন৷