有没有更好的方法从 python 列表中提取任意索引?
我目前使用的方法是:
a = range(100)
s = [a[i] for i in [5,13,25]]
其中 a 是我要切片的数组, [5,13,25] 是我想要获取的元素。它似乎比 Matlab 等价物更冗长:
a = 0:99;
s = a([6,14,26])
原文由 Ben Hamner 发布,翻译遵循 CC BY-SA 4.0 许可协议
有没有更好的方法从 python 列表中提取任意索引?
我目前使用的方法是:
a = range(100)
s = [a[i] for i in [5,13,25]]
其中 a 是我要切片的数组, [5,13,25] 是我想要获取的元素。它似乎比 Matlab 等价物更冗长:
a = 0:99;
s = a([6,14,26])
原文由 Ben Hamner 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果您是 Matlab 用户,但想使用 Python,请查看 numpy :
In [37]: import numpy as np
In [38]: a = np.arange(100)
In [39]: s = a[[5,13,25]]
In [40]: s
Out[40]: array([ 5, 13, 25])
这是 NumPy 和 Matlab 的比较, 这是常见 Matlab 命令及其在 NumPy 中的等效命令 的表格。
原文由 unutbu 发布,翻译遵循 CC BY-SA 4.0 许可协议
2 回答5.1k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
4 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
5 回答2.4k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
1 回答1.7k 阅读✓ 已解决