Hepsini bir araya getirelim: Star Wars profil çıkarma
Oturumuna 480 süper kahramandan oluşan bir liste (heroes) ve her kahramanın yayınevini içeren bir liste (publishers) yüklendi.
heroes listesini belirli bir yayınevine göre filtrelemek istiyorsun, ancak aşağıdaki fonksiyonlardan hangisinin daha verimli olduğundan emin değilsin.
def get_publisher_heroes(heroes, publishers, desired_publisher):
desired_heroes = []
for i,pub in enumerate(publishers):
if pub == desired_publisher:
desired_heroes.append(heroes[i])
return desired_heroes
def get_publisher_heroes_np(heroes, publishers, desired_publisher):
heroes_np = np.array(heroes)
pubs_np = np.array(publishers)
desired_heroes = heroes_np[pubs_np == desired_publisher]
return desired_heroes
Bu egzersiz
Verimli Python Kodu Yazmak
kursunun bir parçasıdırUygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# Use get_publisher_heroes() to gather Star Wars heroes
star_wars_heroes = get_publisher_heroes(____, ____, ____)
print(star_wars_heroes)
print(type(star_wars_heroes))
# Use get_publisher_heroes_np() to gather Star Wars heroes
star_wars_heroes_np = get_publisher_heroes_np(____, ____, ____)
print(star_wars_heroes_np)
print(type(star_wars_heroes_np))