开始使用免费开始使用

宝可梦的组合

小智是一名宝可梦训练家,他遇到了一组 5 只宝可梦。这些宝可梦已经加载到您会话中的一个列表(名为 pokemon)里,并已打印到控制台,方便您查看。

小智想尝试捕捉其中的一些宝可梦,但他的宝可梦图鉴一次只能存储两只。让我们使用 itertools 模块中的 combinations 来看看小智可以捕捉到的宝可梦可能成对组合有哪些。

本练习是课程的一部分

高效编写 Python 代码

查看课程

练习说明

  • itertools 导入 combinations
  • 创建一个名为 combos_objcombinations 对象,其中包含 pokemon 列表中所有可能的宝可梦配对。每个配对包含 2 只宝可梦。
  • combos_obj 解包为名为 combos_2 的列表。
  • 小智升级了他的图鉴,现在可以存储四只宝可梦。使用 combinations 收集所有由 4 只不同宝可梦组成的组合。使用星号(*)将这些组合直接保存到列表 combos_4 中。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Import combinations from itertools
____ ____ ____ ____

# Create a combination object with pairs of Pokémon
combos_obj = ____(____, ____)
print(type(combos_obj), '\n')

# Convert combos_obj to a list by unpacking
combos_2 = ____
print(combos_2, '\n')

# Collect all possible combinations of 4 Pokémon directly into a list
combos_4 = ____
print(combos_4)
编辑并运行代码