首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何创建5x5二维数组的2x2子数组,旋转它,然后将其添加回原始数组?

要创建一个5x5的二维数组,并在其中选择一个2x2的子数组进行旋转,然后将旋转后的子数组添加回原始数组,可以按照以下步骤进行:

步骤1:创建5x5二维数组

首先,我们需要创建一个5x5的二维数组。可以使用Python来实现这一点。

代码语言:txt
复制
import numpy as np

# 创建一个5x5的二维数组
original_array = np.array([
    [1, 2, 3, 4, 5],
    [6, 7, 8, 9, 10],
    [11, 12, 13, 14, 15],
    [16, 17, 18, 19, 20],
    [21, 22, 23, 24, 25]
])
print("Original Array:")
print(original_array)

步骤2:选择2x2子数组

接下来,我们需要选择一个2x2的子数组。假设我们选择从位置(1, 1)开始的2x2子数组。

代码语言:txt
复制
# 选择从位置(1, 1)开始的2x2子数组
sub_array = original_array[1:3, 1:3]
print("Sub Array:")
print(sub_array)

步骤3:旋转2x2子数组

我们可以使用NumPy的rot90函数来旋转2x2子数组。

代码语言:txt
复制
# 旋转2x2子数组
rotated_sub_array = np.rot90(sub_array)
print("Rotated Sub Array:")
print(rotated_sub_array)

步骤4:将旋转后的子数组添加回原始数组

最后,我们将旋转后的子数组添加回原始数组中相同的位置。

代码语言:txt
复制
# 将旋转后的子数组添加回原始数组
original_array[1:3, 1:3] = rotated_sub_array
print("Modified Array:")
print(original_array)

完整代码

以下是完整的代码示例:

代码语言:txt
复制
import numpy as np

# 创建一个5x5的二维数组
original_array = np.array([
    [1, 2, 3, 4, 5],
    [6, 7, 8, 9, 10],
    [11, 12, 13, 14, 15],
    [16, 17, 18, 19, 20],
    [21, 22, 23, 24, 25]
])
print("Original Array:")
print(original_array)

# 选择从位置(1, 1)开始的2x2子数组
sub_array = original_array[1:3, 1:3]
print("Sub Array:")
print(sub_array)

# 旋转2x2子数组
rotated_sub_array = np.rot90(sub_array)
print("Rotated Sub Array:")
print(rotated_sub_array)

# 将旋转后的子数组添加回原始数组
original_array[1:3, 1:3] = rotated_sub_array
print("Modified Array:")
print(original_array)

输出结果

代码语言:txt
复制
Original Array:
[[ 1  2  3  4  5]
 [ 6  7  8  9 10]
 [11 12 13 14 15]
 [16 17 18 19 20]
 [21 22 23 24 25]]
Sub Array:
[[ 7  8]
 [12 13]]
Rotated Sub Array:
[[13  7]
 [12  8]]
Modified Array:
[[ 1  2  3  4  5]
 [ 6 13  7  9 10]
 [11 12  8 14 15]
 [16 17 18 19 20]
 [21 22 23 24 25]]

解释

  1. 创建5x5二维数组:我们使用NumPy创建了一个5x5的二维数组。
  2. 选择2x2子数组:我们从原始数组中选择了一个2x2的子数组。
  3. 旋转2x2子数组:我们使用np.rot90函数旋转了选中的子数组。
  4. 将旋转后的子数组添加回原始数组:我们将旋转后的子数组放回原始数组中相同的位置。

通过这种方式,我们可以轻松地创建、旋转和替换二维数组中的子数组。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

领券