Округление элементов в списке списков - PullRequest
0 голосов
/ 18 февраля 2020

Я пытаюсь округлить указанные c элементы в списках до различных десятичных разрядов. Например, я пытаюсь округлить первое число до 5 десятичных знаков, а второе число - до 4 десятичных знаков. Пока у меня есть это, но я не могу понять, как повторить его для каждого списка в списке.

round_test = []
test = [['start, 0.2222195726, 0.3332746298, 2, 'end'], ['start, 0.4444393872, 0.5554983, 2, 'end'], ['start, 0.6666559246, 0.777692366, 2, 'end']]
for start, starttime, endtime, amt, end in test:
    starttime_5 = round(starttime,5)
    endtime_4 = round(endtime,4)
    round_test = [[start, starttime_5, endtime_4, amt, end]]
print(round_test)

Мой текущий вывод

[['start', 0.66666, 0.7777, 2, 'end']]

Что я пытаюсь достичь

[['start, 0.22222, 0.3333, 2, 'end'], ['start, 0.44444, 0.5555, 2, 'end'], ['start, 0.66666, 0.7777, 2, 'end']]

Спасибо за помощь!

1 Ответ

1 голос
/ 18 февраля 2020

Небольшие ошибки.

(1) начало должно заключаться в кавычки, т. Е. «Начало», а не «начало» 1003 *

(2) round_test.append (...), а не round_test =. ..

round_test = []
test = [['start', 0.2222195726, 0.3332746298, 2, 'end'], ['start', 0.4444393872, 0.5554983, 2, 'end'], ['start', 0.6666559246, 0.777692366, 2, 'end']]
for start, starttime, endtime, amt, end in test:
    starttime_5 = round(starttime,5)
    endtime_4 = round(endtime,4)
    round_test.append([start, starttime_5, endtime_4, amt, end])
print(round_test)

Выход

[['start', 0.22222, 0.3333, 2, 'end'], 
 ['start', 0.44444, 0.5555, 2, 'end'], 
 ['start', 0.66666, 0.7777, 2, 'end']]
...