List . python, массив, список
очень нужно решить такой вопрос. Я имею список размером 9 * 2 (9 строк, 2 столбца), мне надо просуммировать строки так, чтобы первое значение в строке было не меньше, чем 5, а второе заченния не менее 10. Можно создать новый список, или можно редактировать этот . Сам список: [[0.0, 3.8175489999999996], [3.0, 21.275710999999998], [11.0, 59.286198], [47.0, 110.136649], [132.0, 153.45158500000002], [263.0, 171.041259], [301.0, 158.872652], [198.0, 126.488376], [50.0, 200.63002]] Thanks!!!!
Ответы (1 шт):
Автор решения: GrAnd
→ Ссылка
Не очень понятно условие задачи, но попробую...
data = [[ 0.0, 3.8175489999999996],
[ 3.0, 21.275710999999998],
[ 11.0, 59.286198 ],
[ 47.0, 110.136649 ],
[132.0, 153.45158500000002],
[263.0, 171.041259 ],
[301.0, 158.872652 ],
[198.0, 126.488376 ],
[ 50.0, 200.63002 ]]
result = [[0.0, 0.0]]
for values in data:
if result[-1][0] < 5 or result[-1][1] < 10:
result[-1] = list(map(sum, zip(result[-1], values)))
else:
result.append(values)
print(result)
Результат:
[[14.0, 84.379458], [47.0, 110.136649], [132.0, 153.45158500000002], [263.0, 171.041259], [301.0, 158.872652], [198.0, 126.488376], [50.0, 200.63002]]