1. Learn
  2. /
  3. Курси
  4. /
  5. Ефективне написання коду Python

Connected

вправа

Підсумки та середні значення Pokémon без циклу

Список із 720 Pokémon завантажено у вашу сесію під назвою names. Відповідні характеристики кожного Pokémon завантажено як масив NumPy під назвою stats. Кожен рядок stats відповідає певному Pokémon у names, а кожен стовпець представляє окрему характеристику Pokémon (відповідно HP, Attack, Defense, Special Attack, Special Defense і Speed).

Ви хочете зібрати загальне значення характеристик кожного Pokémon (тобто суму кожного рядка в stats) і середнє значення характеристик кожного Pokémon (тобто середнє кожного рядка в stats), щоб знайти найсильнішого Pokémon.

Нижче наведено цикл for, який було написано для збору цих значень:

poke_list = []

for pokemon,row in zip(names, stats):
    total_stats = np.sum(row)
    avg_stats = np.mean(row)
    poke_list.append((pokemon, total_stats, avg_stats))

Інструкції

100 XP
  • Замініть наведений вище цикл for на NumPy:
    • Створіть масив загальних характеристик (total_stats_np) за допомогою методу .sum() і вкажіть правильну вісь.
    • Створіть масив середніх характеристик (avg_stats_np) за допомогою методу .mean() і вкажіть правильну вісь.
    • Створіть підсумковий вихідний список (poke_list_np), об'єднавши список names, масив total_stats_np і масив avg_stats_np.