Есть ли способ обработки единиц, которые имеют одинаковое имя / метку в Pint (возможно, путем переключения контекстов или использования групп или систем)? Например:
G
может иногда использоваться для галлона, силы тяжести или даже Galileo Gal
может использоваться для галлона или Galileo C
можно использовать для Цельсия или Кулона
@context volume
gallon = gallon = 231 * cubic_inch
GAL = gallon
Gal = gallon
G = gallon
@end
@context acceleration
galileo = centimeter / second ** 2
GAL = galileo
Gal = galileo
G = galileo
@end
@context temperature
degree_Celsius = kelvin
C = degree_Celsius
@end
@context charge
coulomb = ampere * second
C = coulomb
@end
Затем я мог бы переключать контексты перед работой с определенным типом юнитов. Однако я, похоже, неправильно понимаю, как работает Pint, потому что мой пример кода приводит к ошибке.
Я знаю, что Pint обрабатывает единицы в моих примерах, используя небольшие различия в использовании заглавных букв, символа степени и т. Д. c , Тем не менее, это не очень хорошо работает для моего проекта. Мне гораздо легче определить тип единицы, с которой я работаю, на основе предоставленных мне имен переменных, чем определить ее по имени / метке единицы (я могу объяснить это более подробно, если это необходимо). Возможно ли временно переопределить юнит, подобный этому, с помощью контекста?
EDIT : я также разместил свой вопрос на GintHub в Pint, и разработчики ответили там. Проверьте эту страницу для обновлений и потенциальных решений: https://github.com/hgrecco/pint/issues/1089