Python中的2D对象数组

前端之家收集整理的这篇文章主要介绍了Python中的2D对象数组前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在将一些 java代码转换为python代码,我最终难以理解如何将 Java中的2D对象数组转换为python.

Java代码

  1. private Node nodes[][] = new Node[rows][columns];

我怎么能在python中这样做?

解决方法

我想这就是你想要的
  1. nodes = [[Node() for j in range(cols)] for i in range(rows)]

但是,初始化列表并不总是一个好习惯.对于矩阵,它可能是有道理的.

如果你想知道:关于list comprehensions的文档

演示代码

  1. >>> class Node:
  2. def __repr__(self):
  3. return "Node: %s" % id(self)
  4. >>> cols = 3
  5. >>> rows = 4
  6. >>> nodes = [[Node() for j in range(cols)] for i in range(rows)]
  7. >>> from pprint import pprint
  8. >>> pprint(nodes)
  9. [[Node: 41596976,Node: 41597048,Node: 41596904],[Node: 41597120,Node: 41597192,Node: 41597336],[Node: 41597552,Node: 41597624,Node: 41597696],[Node: 41597768,Node: 41597840,Node: 41597912]]

猜你在找的Python相关文章