Я читал ответы на вопрос в ветке: https://stackoverflow.com/questions/68538651/using-a-for-loop-to-calculate-the-mean-of-a-list-of-tuples-in-python
Хотя ответы помогли мне, мне нужно спросить, как закончить то, что я безуспешно пытался.
Мой код:
`vacc_counties = [
("Pulaski", 42.7),
("Benton", 41.4),
("Fulton", 22.1),
("Miller", 9.6),
("Mississippi", 29.4),
("Scott County", 28.1),
]
data = map(list, zip(*vacc_counties))
for i in data:
print(i)
`
Я получил эти 2 списка:
['Pulaski', 'Benton', 'Fulton', 'Miller', 'Mississippi', 'Scott County']
[42.7, 41.4, 22.1, 9.6, 29.4, 28.1]
Но теперь моя проблема в том, что я не знаю, как сохранить их в 2 переменных, чтобы после этого вычислить среднее значение.
Я пробовал что-то вроде этого, среди множества других вещей:
i0=[]
i1=[]
for i in data:
if i==0:
i0.append(i)
else:
i1.append(i)
print(i0)
print(i1)
Но результат странный - первый пустой список, плюс список в другой список[[..]], а для второго элемента кортежей список с 2 списками внутри, поэтому я думаю, что не знаю, что я 'я делаю:
[]
[['Pulaski', 'Benton', 'Fulton', 'Miller', 'Mississippi', 'Scott County']]
[]
[['Pulaski', 'Benton', 'Fulton', 'Miller', 'Mississippi', 'Scott County'], [42.7, 41.4, 22.1, 9.6, 29.4, 28.1]]
Если бы кто-нибудь мог закончить этот код, чтобы получить среднее значение, и объяснить мне, почему я получил этот странный результат, я был бы признателен, потому что я действительно потерян.
Заранее спасибо.
Вы можете назначить результаты функции карты непосредственно переменным и использовать их для дальнейших расчетов.
Попробуйте следующее решение:
vacc_counties = [ ("Pulaski", 42.7), ("Benton", 41.4), ("Fulton", 22.1), ("Miller", 9.6), ("Mississippi", 29.4), ("Scott County", 28.1), ]
data = list(map(list, zip(*vacc_counties)))
cntryNames,cntryValues = data
print(cntryNames)
print(cntryValues)
Теперь после этого вы можете применить свои расчеты к этому списку.
проверьте приведенное ниже решение, если оно работает для вас.