метод s.format в цикле for

problemao

Постоялец
Регистрация
25 Май 2015
Сообщения
84
Реакции
120
При использовании метода format в цикле

Код:
sol = []
for i in range(2):
    sol.append(float(input('sol {i}: '.format('polar angle', 'azimuth angle'))))

выдает ошибку: KeyError: 'i'.
В чем может быть проблема?
 

rockerzz

Создатель
Регистрация
12 Янв 2013
Сообщения
13
Реакции
1
В третьей строке синтаксис для format не верный просто
 

rockerzz

Создатель
Регистрация
12 Янв 2013
Сообщения
13
Реакции
1
Наверное так лучше будет:

sol.append(float(input('sol {} {}: '.format('polar angle', 'azimuth angle'))))
 

gear

Писатель
Регистрация
21 Фев 2013
Сообщения
8
Реакции
4
Если ты в позиции для вывода(в фигурных скобках) указываешь строку, то в format'e у тебя должен присутствовать соответствующий kwarg.
Например:
>>> 'Coordinates: {latitude}, {longitude}'.format(latitude='37.24N', longitude='-115.81W')
'Coordinates: 37.24N, -115.81W'
>>> coord = {'latitude': '37.24N', 'longitude': '-115.81W'}
>>> 'Coordinates: {latitude}, {longitude}'.format(**coord)
'Coordinates: 37.24N, -115.81W'
Подробности Для просмотра ссылки Войди или Зарегистрируйся.
 
Сверху