1. Uczyć się
  2. /
  3. Courses
  4. /
  5. Wydajny kod w Pythonie

Connected

Exercise

Wszystko razem: profilowanie na danych o superbohaterach

Do twojej sesji załadowano listę 480 superbohaterów (pod nazwą heroes) oraz listę odpowiadających im wydawców (pod nazwą publishers).

Chcesz przefiltrować listę heroes według konkretnego wydawcy, ale nie wiesz, która z poniższych funkcji jest bardziej wydajna.

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

Instrukcje 1 / 4

undefined XP
    1
    2
    3
    4
  • Użyj funkcji get_publisher_heroes() i get_publisher_heroes_np(), aby zebrać bohaterów ze świata Gwiezdnych Wojen. Jako desired_publisher dla Gwiezdnych Wojen podaj 'George Lucas'.