* और zip का इस्तेमाल कर 'unzip' करना
आप zip() का इस्तेमाल और zip ऑब्जेक्ट से वैल्यू प्रिंट करना जानते हैं. बढ़िया!
आइए zip() के साथ थोड़ा और खेलते हैं. zip() जो करता है उसका उलटा करने के लिए कोई अलग unzip फंक्शन नहीं है. लेकिन हम * की थोड़ी मदद से zip() को ही उलटे काम के लिए इस्तेमाल कर सकते हैं! * किसी भी iterable (जैसे list या tuple) को फंक्शन कॉल में positional arguments के रूप में अनपैक करता है.
इस अभ्यास में, आप zip() की कॉल में * का इस्तेमाल करके zip() द्वारा बनाए गए ट्यूपल्स को अनपैक करेंगे.
दो string ट्यूपल, mutants और powers, पहले से लोड किए गए हैं.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python टूलबॉक्स
अभ्यास निर्देश
mutantsऔरpowersपर, इसी क्रम में,zip()चलाकर एकzipऑब्जेक्ट बनाएँ. परिणाम कोz1में असाइन करें.print()कॉल में*ऑपरेटर का उपयोग करके ट्यूपल्स को positional arguments के रूप में अनपैक करें औरz1को प्रिंट करें.- क्योंकि पिछली
print()कॉल नेz1के एलिमेंट्स को exhaust कर दिया होगा, पहले परिभाषितzipऑब्जेक्ट को दोबारा बनाएँ और परिणाम फिर सेz1को असाइन करें. zip()कॉल में*ऑपरेटर का उपयोग करकेz1के ट्यूपल्स को positional arguments के रूप में अनपैक कर उन्हें 'unzip' करें. परिणामों को, इसी क्रम में,result1औरresult2में असाइन करें.- आखिरी
print()स्टेटमेंटresult1की तुलनाmutantsसे औरresult2की तुलनाpowersसे करने का आउटपुट प्रिंट करता है. अनपैक किए गएresult1औरresult2क्रमशःmutantsऔरpowersके समकक्ष हैं या नहीं, यह देखने के लिए "उत्तर सबमिट करें" पर क्लिक करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Create a zip object from mutants and powers: z1
z1 = ____
# Print the tuples in z1 by unpacking with *
print(____)
# Re-create a zip object from mutants and powers: z1
z1 = ____
# 'Unzip' the tuples in z1 by unpacking with * and zip(): result1, result2
result1, result2 = ____
# Check if unpacked tuples are equivalent to original tuples
print(result1 == mutants)
print(result2 == powers)