Я собираюсь создать приложение с Python, которое должно будет обрабатывать даты BC широко (хранить и извлекать в БД, выполнять вычисления). Большинство дат будут иметь различные неопределенности, например «около 2000BC».BC даты в Python
Я знаю, что библиотека datetime для Python обрабатывает только даты от 1 AD.
Пока что я нашел только FlexiDate. Есть ли другие варианты?
EDIT: Лучший подход, вероятно, будет хранить их в виде строки (есть строки в качестве основного типа данных) и -as suggested- есть пользовательский класс DATETIME, которые могут сделать некоторый числовой смысл. Для большинства это похоже, что даты будут состоять только из года. Есть некоторые интересные проблемы для решения, такие как «ранние 500BC», «между 1600BC и 1500BC», «до 1800BC».
Расплывчатый характер ваших дат может заслужить прокачку собственного класса datetime. –
@JoelCornett Yea, но неопределенности в реальных значениях - это просто реальные значения. Поэтому для данных Роджера должны использоваться любые [модуль или структура данных] (http://stackoverflow.com/a/19869864/623735), которые могут хорошо использовать datetime (обрабатывать BC и timedeltas). Если неопределенность Роджера может быть определена только в терминах естественного языка, так как ему нужно количественно определить ту неопределенность где-то в своем приложении (иначе он будет записывать свои количества в виде строк), тогда ему понадобится анализ чувств (обработка естественного языка). – hobs