मुझे लगता है कि आप क्या चाहते हैं
nodes = [[Node() for j in range(cols)] for i in range(rows)]
है लेकिन यह हमेशा सूचियों प्रारंभ करने में एक अच्छा अभ्यास नहीं है। Matrices के लिए यह समझ में आता है।
आप सोच तो रहे हैं: प्रलेखन के बारे में list comprehensions
डेमो कोड:
>>> class Node:
def __repr__(self):
return "Node: %s" % id(self)
>>> cols = 3
>>> rows = 4
>>> nodes = [[Node() for j in range(cols)] for i in range(rows)]
>>> from pprint import pprint
>>> pprint(nodes)
[[Node: 41596976, Node: 41597048, Node: 41596904],
[Node: 41597120, Node: 41597192, Node: 41597336],
[Node: 41597552, Node: 41597624, Node: 41597696],
[Node: 41597768, Node: 41597840, Node: 41597912]]
मूल रूप से, सूचियों की एक सूची है। लेकिन यह * बहुत * संभावना है कि सूची शुरू करने के साथ शुरू करने का कोई कारण नहीं है। देखें कि आपके मामले में एक सूची समझ काम करती है, अन्यथा इसे किसी अन्य लूप में 'nodes.append ([])' और 'nodes.extend' या' nodes.append' के साथ लूप के रूप में लिखें। – delnan