У меня есть 2 списка: один для индексов (vv
ниже) и другой для чисел с плавающей запятой (aa
ниже). Я хочу сделать 2 вещи с Python 2.7.
(1) использовать vv
, чтобы выбрать элементы из aa
, чтобы создать новый список ww
(2) print ww
в 2-х десятичном формате. Количество показателей варьируется. Мне удается сделать это с помощью следующего кода
# A list of indices
vv = [1, 2, 4]
# A list of floats
aa = [31.123456, 37.354135, 41.987438, 43.458713, 52.687135, 65.321486]
ww = []
for ii in vv:
ww.append(aa[ii])
print "Indices ", vv, "correspond to [",
for ff in ww:
print "%.2f," % ff,
print "]"
Его вывод:
Indices [1, 2, 4] correspond to [ 37.35, 41.99, 52.69, ]
но я не доволен этим. Для (1) есть более Pythonish способ сделать это, а для (2) вывод не совсем так, как я хочу, так как в конце слишком много запятых и есть лишние пробелы вокругкронштейны. Он должен выглядеть как
Indices [1, 2, 4] correspond to [37.35, 41.99, 52.69]
и, конечно, работать с любым количеством индексов. При поиске похожих сообщений они всегда имеют фиксированное, заранее известное число индексов. Я думаю, что понимание списка как-то сработает? Это упоминалось в https://stackoverflow.com/a/16986985/11199684