update list based on other values
A simple dict comprehension and use of str.format() will do the job here:

&gt;&gt;&gt; {"{}V{}".format(name, version): description 
     for name, version, description in movies}
{'HarryPotterV1': 'Movie about magic', 
 'HarryPotterV4': 'Movie about more magic', 
 'JawsV1': 'Movie about sharks', 
 'JawsV2': 'Movie about more sharks'}


Or, in very old versions of Python where dict comprehensions don't exist, simple replace with dict() and a generator expression - e.g: dict(... for ... in moves).

Note that if this is just because you want to have the data as keys, you don't need to turn them into a string, a tuple can be a key too:

&gt;&gt;&gt; {(name, version): description 
     for name, version, description in movies}
{('Jaws', 1): 'Movie about sharks', 
 ('HarryPotter', 4): 'Movie about more magic', 
 ('Jaws', 2): 'Movie about more sharks', 
 ('HarryPotter', 1): 'Movie about magic'}


This would be more appropriate where you don't need the strings, as it means you don't have to parse stuff out or create strings for keys, and makes the data easier to manipulate.