Как мне отформатировать строку с помощью словаря в python-3.x?

Я большой поклонник использования словарей для форматирования строк. Это помогает мне читать строковый формат, который я использую, а также позволяет использовать существующие словари. Например:

class MyClass:
    def __init__(self):
        self.title = 'Title'

a = MyClass()
print 'The title is %(title)s' % a.__dict__

path = '/path/to/a/file'
print 'You put your file here: %(path)s' % locals()

Однако я не могу понять синтаксис Python 3.x для того же (или если это вообще возможно). Я хотел бы сделать следующее

# Fails, KeyError 'latitude'
geopoint = {'latitude':41.123,'longitude':71.091}
print '{latitude} {longitude}'.format(geopoint)

# Succeeds
print '{latitude} {longitude}'.format(latitude=41.123,longitude=71.091)
194
задан Alex L 7 November 2012 в 17:27
поделиться