Files
gsm-19_gradiometr/functions.py
2026-05-26 16:26:04 +03:00

48 lines
1.4 KiB
Python

def convert_deg(x):
x = str(x)
if x != "0":
return int(x[0:2]) + ( int( x[2:4] ) + int( x[4:] ) / 100000) / 60
return x
def time_to_seconds(time):
# Разделяем на целую и дробную часть
time_str = str(time)
if '.' in time_str:
main, frac = time_str.split('.')
frac_seconds = float(f'0.{frac}')
else:
main = time_str
frac_seconds = 0.0
# Дополняем до 6 цифр (добавляем ведущий ноль если нужно)
main = main.zfill(6)
hours = int(main[0:2])
minutes = int(main[2:4])
seconds = int(main[4:6])
return hours * 3600 + minutes * 60 + seconds + frac_seconds
def datetime_to_seconds(time_str):
"""
Преобразует время в формате HH:MM:SS.sss в секунды от полуночи
Пример: '14:40:00.000' -> 52800.0
"""
# Разделяем на основное время и миллисекунды
if '.' in time_str:
hms, ms = time_str.split('.')
milliseconds = int(ms)
else:
hms = time_str
milliseconds = 0
# Парсим часы, минуты, секунды
parts = hms.split(':')
hours = int(parts[0])
minutes = int(parts[1])
seconds = int(parts[2]) if len(parts) > 2 else 0
return hours * 3600 + minutes * 60 + seconds + milliseconds / 1000