Единственный язык, о котором я могу думать для попытки такого изменения по транспортировке нефти и газа, был бы Perl. Конечно, Python бьет Perl к той конкретной финишной черте путем выпуска сначала. Нужно отметить, однако, что изменения Perl намного более обширны, чем Python и вероятно будут более трудными к detangle.
(существует цена за Perl "существует больше чем Один Способ Сделать Это" философия.)
существуют примеры как изменения от версии до версии основанных на.NET языков (нелепый, полагая, что смыслом.NET, как предполагалось, была устойчивость API и межплатформенная совместимость). Однако я едва назвал бы те языки "зрелыми"; это всегда было больше design-on-the-go, build-the-plane-as-we-fly подход к вещам.
Или, поскольку я склонен думать о нем, большинство языков прибывает или из "органического роста" или из "спроектированной конструкции". Perl является идеальным примером органического роста; это запустилось как необычное крыло инструмента обработки текста awk/sed и превратилось в полный язык.
Python, с другой стороны, намного более спроектирован. Проведите немного времени, блуждая вокруг обширных технических описаний на их веб-сайте для наблюдения обширных дебатов, которые входят в каждое ровное незначительное изменение к синтаксису и реализации языка.
идея сделать эти виды далеко идущих изменений несколько в новинку для языков программирования, потому что сами языки программирования изменились по своей природе. Это раньше было, что методологии программирования изменились только, когда новый процессор вышел, который имел новую систему команд. Ранние языки склонялись к любому быть таким образом низкий уровень и соединены с ассемблером (например, C) или столь совершенно динамичный по своей природе (Forth, Lisp), что такое изменение по транспортировке нефти и газа даже не подошло бы как соображение.
относительно того, являются ли изменения хорошими, я не уверен. Я склонен иметь веру в людей разработка направляющего Python, однако; изменения на языке к настоящему времени были в основном к лучшему.
я думаю в дни для прибытия, Глобальная Блокировка Интерпретатора окажется более центральной, чем изменения синтаксиса. Хотя новая многопроцессорная библиотека могла бы облегчить большую часть из этого.
Попробуйте использовать модуль dateutil.parser.
import dateutil.parser
date1 = dateutil.parser.parse("December 12th, 2008")
date2 = dateutil.parser.parse("January 1st, 2009")
Дополнительную документацию можно найти здесь: http://labix.org/python-dateutil
Вам понадобится python_dateutil Густаво Нимейера - после его установки
>>> from dateutil import parser
>>> parser.parse('December 12th, 2008')
datetime.datetime(2008, 12, 12, 0, 0)
>>> parser.parse('January 1st, 2009')
datetime.datetime(2009, 1, 1, 0, 0)
>>>
strptime сложен, потому что он полагается на базовую библиотеку C для своей реализации, поэтому некоторые детали различаются между платформами. Кажется, нет способа подобрать нужных персонажей. Но сначала вы можете очистить данные:
# Remove ordinal suffixes from numbers.
date_in = re.sub(r"(st|nd|rd|th),", ",", date_in)
# Parse the pure date.
date = datetime.strptime(date_in, "%B %d, %Y")