Jak sprawdzić, czy string może być temperaturą?

0

Cześć. Muszę sprawdzić, czy w danym stringu może być zapisana temperatura (wraz ze znakiem °C). To, co próbowałem zrobić, to ucięcie dwóch ostatnich znaków, parsowanie na float i sprawdzenie, czy powstała liczba mieści się w jakimś logicznym przedziale temperatur. Jednak to rozwiązanie ma luki, bo jeżeli np. w mojej zmiennej będzie "1525", to to zostanie również uznane za prawidłową temperaturę. Dlatego też na początku chciałem sprawdzić, czy string jest w postaci "liczba °C", jednak nie wiem, jak to zrobić. Chcę użyć wyrażeń regularnych, jednak wcześniej nie miałem z nimi do czynienia i nie wiem, jak je tutaj zastosować.

0
def is_temperature(value):
  try:
    if value.endswith('°C'):
      return min_temp <= int(value[:-2]) <= max_temp
    else:
      return False
  except:
    return False
1

A co ze stopniami Fahrenheita?

3

temps = "cyka blyet idi na hu... 113 °C".split(" ")
if "°C" in temps:
index = temps.index("°C")
print(temps[index-1])

1 użytkowników online, w tym zalogowanych: 0, gości: 1