python - 智能处理具有多个索引的 Python 数组

标签 python arrays numpy multidimensional-array

我有以下代码:

p1 = np.array([[[[[[[[[[0.]*2]*2]*2]*2]*2]*2]*2]*2]*2]*2)
s = [0]*10
#
# Do something with s
#
p1[s[0],s[1],s[2],s[3],s[4],s[5],s[6],s[7],s[8],s[9]] += 1

有没有更聪明的方法:

  1. 创建没有所有这些括号的 p1,以及
  2. 使用字符串或列表访问 p1 的组件?

我的想法是这样的:

p1[s] += 1

或:

p1[*s] += 1

例如,如果我想要 N 个索引而不是 10 个索引怎么办?

最佳答案

np.array([[[[[[[[[[0.]*2]*2]*2]*2]*2]*2]*2]*2]*2]*2)

最好写成:

np.zeros((2,2,2,2,2,2,2,2,2,2))

或者有十个 2:

np.zeros((2,)*10)

关于python - 智能处理具有多个索引的 Python 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29857945/

相关文章:

python - 非英文字符、标点符号等特殊字符或单词开头或中间的数字的单词数

python - 从 Python 脚本运行 .sh 文件?

python - GTK/ python : How to get key-press-event to edit and navigate a TreeView cell?

arrays - 基于ruby中的多个属性从对象数组中删除重复项

python - 根据元素出现在另一个数组中的次数,删除 NumPy 数组中元素的最高效方法是什么?

javascript - 如何从javascript中的字符串中提取数字数组

python - 通过 Web 访问独立的 GUI 应用程序

python - 在 python 中使用 unique 函数时保持顺序

python - python中二维和一维数组的元素明智乘法

python - 如何从 Python 中的文本文件导入矩阵