Задать вопрос
@anya_hacker

Как вывести числа с двумя знаками после запятой?

Программа должна вывести числа, у которых всего два числа после запятой.

На данный момент программа сокращает количество цифр после запятой до двух и выводит числа.

Но как не изменять числа, а лишь "отфильтровать" и вывести необходимые числа?
text = '234.54, 4.85, 2.123'
match = re.findall("[0-9]+[.]\d{2}", text)
print(match)


Вывод: ['234.54', '4.85', '2.12'], а должен быть ['234.54', '4.85']
  • Вопрос задан
  • 293 просмотра
Подписаться 1 Простой Комментировать
Решения вопроса 1
0xD34F
@0xD34F Куратор тега Регулярные выражения
re.findall(r'\d+\.\d{2}(?!\d)', text)
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@alexbprofit
Junior SE
text = '234.54, 4.85, 2.123'
y = text.split(", ")

def after_decimals(string):
  x = 0
  cond = False
  for el in string:
    if el == '.':
      cond = True
    
    elif cond:
      x += 1
  return x

result = [el for el in y if after_decimals(el) == 2]

print(result) # ['234.54', '4.85']
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
SpectrumData Екатеринбург
от 150 000 до 250 000 ₽
AST Москва
До 350 000 ₽
Wanted. Москва
До 250 000 ₽
14 янв. 2025, в 00:52
100 руб./за проект
14 янв. 2025, в 00:45
7000 руб./за проект
14 янв. 2025, в 00:39
30000 руб./за проект