Some alternate with defaultDict,
greeting_dict = {'greetings': 'hello'} if 'name' in greeting_dict : opening_line = '{greetings} {name}'.format(**greeting_dict) else: opening_line = '{greetings}'.format(**greeting_dict) print opening_line
Perhaps even more succinctly, use the dictionary to set the default for each parameter,
'{greetings} {name}'.format(greetings=greeting_dict.get('greetings','hi'), name=greeting_dict.get('name',''))
source share