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
(一千万)。不过,我不太喜欢使用这种神秘的数字。有没有更符合Python风格的方法,比如说用一个表示无限的整数常量?
2 个回答
0
你试过用 sys.maxint
吗?
31
在Python中没有所谓的“无限整数常量”,但是如果在切片中使用None
,那么它会自动使用该位置的默认值。这些默认值分别是开始位置、结束位置,以及序列中的每个项目,适用于切片的三个部分。
>>> 'abc'[:None]
'abc'