您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Python-为什么find和index方法的工作方式不同?

Python-为什么find和index方法的工作方式不同?

这一直很烦人;-)与一个答案相反,关于字符串,-1没有什么特别的;例如,

>>> "abc"[-1]
'c'
>>> [2, 3, 42][-1]
42

find()实际上存在的问题是,-1实际上 特殊的索引。因此find(),当未找到要搜索内容时,使用代码容易感到惊讶- 甚至在发布Python 1.0.0之前就注意到,此类代码经常会继续执行错误的操作。

index()使用时,不会出现这样的意外- 不能地忽略异常。但是,设置try/except这种简单的操作不仅令人烦恼,而且还增加了“应该”进行快速操作的大量开销(额外时间)。因此,string.find()是在Python 0.9.9中添加的(在此之前,只能string.index()使用)。

因此,我们两者兼有,并且甚至在Python 3中也可以使用。

python 2022/1/1 18:52:01 有399人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶