BaşlayınÜcretsiz Başlayın

Bütüncül dönüştürme döngüsü

Tüm olası Pokémon türlerinin bir listesi oturumuna pokemon_types olarak yüklendi. Kolaylık olması için konsola yazdırıldı.

Tüm olası Pokémon türü çiftlerini toplamak istiyorsun. Bu çiftlerin her birini, her listenin ilk elemanı numaralandırılmış bir indeks olacak şekilde ayrı bir liste içinde saklamak istiyorsun. Bu, olası çiftlerin toplam sayısını görmeni sağlar ve her çift için indeksli bir etiket sunar.

Aşağıdaki döngü bu işi yapmak için yazıldı:

enumerated_pairs = []

for i,pair in enumerate(possible_pairs, 1):
    enumerated_pair_tuple = (i,) + pair
    enumerated_pair_list = list(enumerated_pair_tuple)
    enumerated_pairs.append(enumerated_pair_list)

Haydi bu döngüyü bütüncül bir dönüştürme kullanarak daha verimli hale getirelim.

Bu egzersiz

Verimli Python Kodu Yazmak

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • itertools modülünden combinations oturumuna yüklendi. Onu kullanarak, tüm olası Pokémon türü çiftlerini içeren (her çift 2 Pokémon türünden oluşur) possible_pairs adlı bir liste oluştur.
  • For döngüsünün üstünde enumerated_tuples adlı boş bir liste oluştur.
  • enumerated_tuples içindeki her bir demeti (tuple) bir listeye dönüştürmek için yerleşik bir fonksiyon kullan.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# Collect all possible pairs using combinations()
possible_pairs = [*____(pokemon_types, ____)]

# Create an empty list called enumerated_tuples
____ = ____

for i,pair in enumerate(possible_pairs, 1):
    enumerated_pair_tuple = (i,) + pair
    enumerated_tuples.append(enumerated_pair_tuple)

# Convert all tuples in enumerated_tuples to a list
enumerated_pairs = [*____(____, enumerated_tuples)]
print(enumerated_pairs)
Kodu Düzenle ve Çalıştır