Есть ли в Python встроенная функция для естественной сортировки строк?

Я использовал Flex начиная с версии 2 и Flex3/BlazeDS, так как это вышло из беты. У меня также есть некоторый опыт с Lazzlo, и различием является день и ночь (скалы Flex!). Я не сожалел однажды использование Flex. Относительно FlexBuilder это стоит каждого пенса. В то время как это абсолютно возможно и разумно записать приложение Flex без FlexBuilder, повышений эффективности использования, это больше, чем возместит инвестиции. Попробуйте оценку в течение 30 дней и сравните ее с некоторыми из других опций, предложенных о (я собираюсь попробовать FlashDevelop).

Некоторые вещи, которые Вы получаете с FlexBuilder, включают:

  • завершение Кода
  • Визуальный редактор
  • Отладчик (это фантастически!!)
  • Профилировщик (также очень хороший)

Относительно Linux, альфа-версия FlexBuilder не имеет визуального редактора. Кроме этого, я понимаю, что это - обоснованно завершенная функция, все еще свободная, и многие сотрудники Adobe, я говорил с тем использованием, Linux доволен им.

248
задан rp. 26 June 2014 в 11:29
поделиться

1 ответ

После @Mark ответа Byers вот адаптация, которая принимает key параметр и более PEP8-совместима.

def natsorted(seq, key=None):
    def convert(text):
        return int(text) if text.isdigit() else text

    def alphanum(obj):
        if key is not None:
            return [convert(c) for c in re.split(r'([0-9]+)', key(obj))]
        return [convert(c) for c in re.split(r'([0-9]+)', obj)]

    return sorted(seq, key=alphanum)

я также сделал Суть

0
ответ дан 23 November 2019 в 03:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: