Python 中的 unordered_map<int, vector<float>> 等价物

新手上路,请多包涵

我需要一个 Python 结构,它将整数索引映射到浮点数向量。我的数据是这样的:

 [0] = {1.0, 1.0, 1.0, 1.0}
[1] = {0.5, 1.0}

如果我用 C++ 编写它,我将使用以下代码来定义/添加/访问,如下所示:

 std::unordered_map<int, std::vector<float>> VertexWeights;
VertexWeights[0].push_back(0.0f);
vertexWeights[0].push_back(1.0f);
vertexWeights[13].push_back(0.5f);
std::cout <<vertexWeights[0][0];

Python 中 this 的等效结构是什么?

原文由 Cihan 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 882
2 个回答

这种格式的 字典-> { (int) key : (list) value }

 d = {}  # Initialize empty dictionary.
d[0] = [1.0, 1.0, 1.0, 1.0] # Place key 0 in d, and map this array to it.
print d[0]
d[1] = [0.5, 1.0]
print d[1]
>>> [1.0, 1.0, 1.0, 1.0]
>>> [0.5, 1.0]
print d[0][0]  # std::cout <<vertexWeights[0][0];
>>> 1.0

原文由 ospahiu 发布,翻译遵循 CC BY-SA 3.0 许可协议

像这样的字典和列表怎么样:

 >>> d = {0: [1.0, 1.0, 1.0, 1.0], 1: [0.5, 1.0]}
>>> d[0]
[1.0, 1.0, 1.0, 1.0]
>>> d[1]
[0.5, 1.0]
>>>

键可以是整数,关联的值可以存储为列表。 Python 中的字典是一个哈希映射,复杂性是摊销的 O(1)

原文由 Shubham 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题