ComeçarComece gratuitamente

Reunindo tudo isso: Perfil de Guerra nas Estrelas

Uma lista de 480 super-heróis foi carregada em sua sessão (chamada heroes), bem como uma lista da editora correspondente de cada herói (chamada publishers).

Você gostaria de filtrar a lista heroes com base no editor específico de um herói, mas não tem certeza de qual das funções abaixo é mais eficiente.

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

Este exercício faz parte do curso

Como escrever um código Python eficiente

Ver Curso

Exercício interativo prático

Experimente este exercício preenchendo este código de exemplo.

# 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))
Editar e executar código