Я в настоящее время изучаю инженерию и у меня есть много книг, которые находятся в Империалах, когда я работаю в метрике. Поэтому я пытался написать функцию в Python, которая позволяет мне вставить линию текста, которая автоматически обнаруживает имперские единицы в указанном тексте, а затем хранит ее в DICT, чтобы я мог пройти через указанный дикт, чтобы преобразовать его в метрику. Однако, похоже, он также преобразует Ft /Sec² или Ft /Sec в FT, прежде чем он получит шанс «увидеть» /sec² или /sec часть подразделения, которое я предполагаю. Если кто-то знает лучший способ проверить это, чем с помощью регуляции, я открыт для предложений!
def extractUnitsFromText(text):
pattern = r'(?P\d+\.?\d*)[-\s]*?(?P(?:ft/sec²|ft/s²|ft/s2|ft/sec|ft/s|in(?:ches)?\.?|ft\.?|feet|lb/ft|pounds?|lb(?:\s*/\s*ft)?|slug(?:s)?)(?:\^[\d]+)?)'
matches = re.finditer(pattern, text)
units_dict = defaultdict(list)
for match in matches:
value = float(match.group('value'))
unit = match.group('unit').strip().lower()
unit = unit.replace('lbs', 'lb').replace('in.', 'in')
units_dict[unit].append(value)
return dict(units_dict)```
Подробнее здесь: https://stackoverflow.com/questions/796 ... -in-python
Имея проблему с преобразованием Imperial в метрику в Python ⇐ Python
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Добавьте новые теги в автоматически сгенерированную метрику Spring Data Prometheus
Anonymous » » в форуме JAVA - 0 Ответы
- 6 Просмотры
-
Последнее сообщение Anonymous
-