Refactoring from DynamicVector to a different data structure?
I'm currently teaching myself Mojo by porting the solutions to Codewars katas in Python over to the new language.
The "safecracker" problem asks you to write a function that returns a tuple of three integers.
My Python solution used the tuple type. My Mojo solution uses DynamicVector in place of tuple.
There must be a better way to do it than that, surely?
I'm having difficulty with the official docs (skill issue on my part). Suggestions welcome. Help appreciated.
2 Replies
DynamicVector
's really for containers that change size a lot. Mojo has a Tuple
type which has similar functionality to Python's tuple
, and you can see it here: https://docs.modular.com/mojo/stdlib/builtin/tuple.html. However, I think that StaticTuple
(https://docs.modular.com/mojo/stdlib/utils/static_tuple.html) actually could be better suited here, since it's for containers whose sizes don't change, and with homogenous types (Tuple
can handle different types, which we don't need, and makes it a little more annoying to access elements).
Something like this is likely what you're looking for.
Perfect answer. Thank you!