Dynamo Dictionaries vs Lists
Solve challenges faster with Dynamo
All Dynamo users will recognise the necessity of understanding and managing lists in all but the simplest of programs. In Dynamo 2.0 we now have an inbuilt option to use dictionaries to store and manage data.
A list is comprised of an index or indices and values that are always ordered. A simple example is illustrated below. The grey box is a series of indices starting from 0 and these are linked to the values.
If I decided to sort the list alphabetically then the indices will change. This method is not particularly useful when you need to ‘tie’ data to keys.
An example of this would be looking up values in a Uniclass2 table.
The Uniclass codes are directly linked to the descriptions; if I want to lookup a description from a code then a dictionary will be useful.
The Dynamo Script below reads the Uniclass2 data from an excel sheet and splits this into two lists. The first list is the code and the second list contain the descriptions.
A dictionary can be made from these two lists. The ‘ByKeysValues’ is used to create the dictionary and then the ‘ValueAtKey’ can be used to ‘look up’ the data.
In the example below, you can see that two values have been ‘looked up’ from the given Uniclass codes. These strings could have been extracted from Revit model elements.
In summary, dictionaries are very powerful when data needs to be tied to specific values.
Dynamo is a visual programming tool that works with Revit. It enables designers to create visual logic to explore parametric designs and automate tasks. For more information on Autodesk’s Dynamo Studio and how to more effectively work with project teams, please get in touch with the Excitech team.
One of the great things about Revit MEP is that I can incorporate the standards for presentation, mechanical and electrical services, and deliverables into my project template so that every new project I create starts from the same position, saving me time, promoting consistency, and reducing errors in my project.Learn more
It seems like such a long time ago that we were all wondering how the General Data Protection Regulation (GDPR) would impact our businesses and it’s easy to imagine that the problem has now gone away, but ignore it, and you could be making an expensive mistake.Learn more