1. Learn
  2. /
  3. कोर्स
  4. /
  5. Efficient Python Code लिखना

Connected

अभ्यास

बिना लूप के Pokémon इकट्ठा करना

poke_names के रूप में 720 Pokémon वाली एक सूची आपके सेशन में लोड की गई है. प्रत्येक Pokémon की संबंधित generation वाली दूसरी सूची poke_gens के रूप में लोड की गई है.

एक for लूप बनाया गया है जो generation one या two से संबंधित Pokémon को फ़िल्टर करता है और प्रत्येक Pokémon के नाम में अक्षरों की संख्या इकट्ठा करता है:

gen1_gen2_name_lengths_loop = []

for name,gen in zip(poke_names, poke_gens):
    if gen < 3:
        name_length = len(name)
        poke_tuple = (name, name_length)
        gen1_gen2_name_lengths_loop.append(poke_tuple)

निर्देश

100 XP
  • ऊपर दिए गए for लूप को list comprehension और map() फंक्शन का उपयोग करके हटा दें:

    • list comprehension से वे सभी Pokémon इकट्ठा करें जो generation 1 या generation 2 से संबंधित हैं. इसे gen1_gen2_pokemon के रूप में सेव करें.
    • map() फंक्शन का उपयोग करके gen1_gen2_pokemon सूची के भीतर प्रत्येक Pokémon के नाम में अक्षरों की संख्या इकट्ठा करें. इस map object को name_lengths_map के रूप में सेव करें.
    • gen1_gen2_pokemon और name_lengths_map को मिलाकर gen1_gen2_name_lengths नाम की एक सूची बनाएँ.