Python's equivalent of what I want is:
>>> #C#: Dictionary<int, string> tempDict = ...
>>> tempDict = {i : str(i) for i in range(200000)}
>>> tempDict[5]
'5'
>>>
The example is a bit simplified, but I can modify it myself; do not want to bother you with details of proprietary classes.
Got it:
var y = (from x in Enumerable.Range(0, 20000) select Guid.NewGuid()).ToDictionary(g=>g, g=>new MyObj(g))