Целочисленная бесконечность Python для нарезки - программирование
Подтвердить что ты не робот

Целочисленная бесконечность Python для нарезки

Я определил параметр среза в файле конфигурации:

max_items = 10

Мой класс разбивает список по этому параметру:

items=l[:config.max_itmes]

Когда max_items = 0, я хочу, чтобы все элементы были взяты из l. Быстрый и грязный способ:

config.max_items=config.max_items if config.max_items>0 else 1e7

Предполагая, что будет меньше элементов 1e7. Однако мне не нравятся магические числа. Есть ли более питонический способ сделать это, как бесконечная целая константа?

4b9b3361

Ответ 1

В Python нет "константы целочисленности бесконечности", но использование None в срезе приведет к использованию по умолчанию для данной позиции, которые являются началом, концом и каждым элементом в последовательности, для каждого из трех частей среза.

>>> 'abc'[:None]
'abc'

Ответ 2

Вы пробовали с помощью sys.maxint?