题目
下面哪个选项可以生成一个 4 行 2 列的全 1 数组?A np.ones((4,2))B np.ones([2,4])C np.ones(4,2)D np.ones((2,4))
下面哪个选项可以生成一个 4 行 2 列的全 1 数组?
A np.ones((4,2))
B np.ones([2,4])
C np.ones(4,2)
D np.ones((2,4))
题目解答
答案
在 NumPy 库中,np.ones() 函数用于创建指定形状的全 1 数组。
1. 理解 np.ones() 的用法:
- 该函数的第一个参数
shape用来定义数组的形状。 - 如果要创建多维数组(例如二维数组),
shape参数通常需要传入一个元组(tuple)或列表(list),其中包含各个维度的大小。 - 对于二维数组,惯例是
(行数, 列数)。
2. 分析题目要求:
我们需要生成一个 4 行 2 列 的全 1 数组。这意味着形状参数中,第一个数字应该是 4(行数),第二个数字应该是 2(列数)。
3. 逐一分析选项:
-
A.
np.ones((4,2))- 这里传入的参数是一个元组
(4, 2)。 - 按照
(行数, 列数)的顺序,它表示 4 行 2 列。 - 这是生成 4 行 2 列全 1 数组的正确且标准的写法。
- 这里传入的参数是一个元组
-
B.
np.ones([2,4])- 这里传入的参数是一个列表
[2, 4]。 - 它表示 2 行 4 列。
- 这不符合题目要求的 4 行 2 列。
- 这里传入的参数是一个列表
-
C.
np.ones(4,2)- 在 Python 中,这样写相当于向函数传递了两个独立的整数参数。
np.ones()的签名通常是ones(shape, ...),如果直接传4, 2,第二个2会被误认为是其他参数(如dtype等),这会导致语法错误或不符合预期的结果,不能正确指定形状。
-
D.
np.ones((2,4))- 这里传入的参数是元组
(2, 4)。 - 它表示 2 行 4 列。
- 同样不符合题目要求的 4 行 2 列。
- 这里传入的参数是元组
结论:
通过推理可知,只有选项 A 的写法 (4, 2) 准确对应了 4 行 2 列的形状,并且语法正确。
因此,正确答案是 A。
解析
本题考查的是NumPy库中np.ones()函数的使用,解题的关键在于理解该函数如何通过参数来指定数组的形状。
- 理解
np.ones()函数:np.ones()函数用于创建指定形状的全1数组。其第一个参数shape用于定义数组的形状。当创建多维数组(如二维数组)时,shape参数通常需要传入一个元组(tuple)或列表(list),其中包含各个维度的大小。对于二维数组,惯例是(行数, 列数)。
- 分析题目要求:
- 题目要求生成一个4行2列的全1数组,所以形状参数中,第一个数字应该是4(行数),第二个数字应该是2(列数)。
- 逐一分析选项:
- 选项A:
np.ones((4,2))- 这里传入的参数是一个元组
(4, 2),按照(行数, 列数)的顺序,它表示4行2列,这是生成4行2列全1数组的正确且标准的写法。
- 这里传入的参数是一个元组
- 选项B:
np.ones([2,4])- 这里传入的参数是一个列表
[2, 4],它表示2行4列,不符合题目要求的4行2列。
- 这里传入的参数是一个列表
- 选项C:
np.ones(4,2)- 在Python中,这样写相当于向函数传递了两个独立的整数参数。
np.ones()的签名通常是ones(shape, ...),如果直接传4, 2,第二个2会被误认为是其他参数(如dtype等),这会导致语法错误或不符合预期的结果,不能正确指定形状。
- 在Python中,这样写相当于向函数传递了两个独立的整数参数。
- 选项D:
np.ones((2,4))- 这里传入的参数是元组
(2, 4),它表示2行4列,同样不符合题目要求的4行2列。
- 这里传入的参数是元组
- 选项A: