Я получил словарь, как показано ниже:
a = [('Ma', [128.35226732698018]), ('Ta', [56.42857142857143]), ('Eg', [46.35428571428572]), ('Ky', [41.6177429876057])]
Вот что я хотел бы вывести:
Ma (128.35)
Ta (56.43)
Eg (46.35)
Ky (41.62)
Как я могу избавиться от списка и кортежа и изменить номер на float:2f
?
4 ответа
a = [('Ma', [128.35226732698018]), ('Ta', [56.42857142857143]), ('Eg', [46.35428571428572]), ('Ky', [41.6177429876057])]
for k in a:
print(k[0], '{:.2f}'.format(k[1][0]))
Вы можете распаковать значения и округлить:
a = [('Ma', [128.35226732698018]), ('Ta', [56.42857142857143]), ('Eg', [46.35428571428572]), ('Ky', [41.6177429876057])]
for name, [value] in a:
print(name, "({})".format(round(value, 2)))
Окончательный результат:
Ma (128.35)
Ta (56.43)
Eg (46.35)
Ky (41.62)
В следующем примере используются распаковка значений и форматирование строк , которые очень важны для изучения:
a = [('Ma', [128.35226732698018]), ('Ta', [56.42857142857143]), ('Eg', [46.35428571428572]), ('Ky', [41.6177429876057])]
for k, v in a:
print('{} ({:.2f})'.format(k, *v))
Выходы:
Ma (128.35)
Ta (56.43)
Eg (46.35)
Ky (41.62)
Как утверждает @ Ajax1234, распаковка , выполняемая оператором *
, работает только с Python 3. Если вы используете Python 2, вы можете заменить *v
на v[0]
. Обратите внимание, что последний работает с обоими.
a = [('Ma', [128.35226732698018]), ('Ta', [56.42857142857143]), ('Eg', [46.35428571428572]), ('Ky', [41.6177429876057])]
[print(elem[0],'('+str(round(elem[1][0],2))+')') for elem in a]
Как насчет понимания списка.
Похожие вопросы
Новые вопросы
python
Python - это многопарадигмальный, динамически типизированный, многоцелевой язык программирования. Он разработан для быстрого изучения, понимания и использования, а также для обеспечения чистого и единообразного синтаксиса. Обратите внимание, что Python 2 официально не поддерживается с 01.01.2020. Тем не менее, для вопросов о Python, связанных с версией, добавьте тег [python-2.7] или [python-3.x]. При использовании варианта Python (например, Jython, PyPy) или библиотеки (например, Pandas и NumPy) включите его в теги.