1 条题解
-
0
NUMPY008 题解:反转向量
题目
给定一个整数 ,创建一个 0 到 的向量并反转。
解题思路
- 使用
np.arange(n)创建 0 到 n-1 的数组 - 使用切片
[::-1]反转数组
代码
import numpy as np n = int(input()) Z = np.arange(n) Z = Z[::-1] print(Z)代码详解
1. 创建数组
Z = np.arange(n)np.arange(n)创建[0, 1, 2, ..., n-1]- 例如 n=10 时,创建
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
2. 反转数组
Z = Z[::-1][::-1]是切片语法,步长为 -1- 从后往前遍历,实现反转
- 例如
[0,1,2,3,4]变成[4,3,2,1,0]
运行示例
输入:
10输出:
[9 8 7 6 5 4 3 2 1 0]切片的语法
array[start:stop:step]切片 含义 [::-1]全部反转(步长 -1) [5:]从索引 5 到末尾 [:5]从开始到索引 5 [::2]每隔一个取一个 其他反转方法
# 方法1:切片反转 Z = Z[::-1] # 方法2:使用 np.flip Z = np.flip(Z) # 方法3:使用 reversed Z = np.array(list(reversed(Z)))核心知识点
np.arange(n)—— 创建 0 到 n-1 的数组- 切片
[::-1]—— 步长为负数实现反转 - NumPy 切片返回视图,不复制数据
- 使用
- 1
信息
- ID
- 439
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 10
- 标签
- (无)
- 递交数
- 1
- 已通过
- 1
- 上传者