18

我在配置文件中定义了一个切片参数:

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项目。但是,我不喜欢使用幻数。有没有更 Pythonic 的方法,比如无穷大整数常量?

4

2 回答 2

30

Python 中没有“无穷大整数常量”,但None在切片中使用会导致它使用给定位置的默认值,即开始、结束和顺序中的每个项目,用于 a 的三个部分中的每一个片。

>>> 'abc'[:None]
'abc'
于 2011-07-17T09:41:53.720 回答
0

你试过sys.maxint吗?

于 2011-07-17T09:42:59.480 回答