python列表find函数
时间: 2024-03-24 21:12:29 浏览: 65
Python 中列表(list)没有 `find()` 方法,但是你可以使用 `index()` 方法来查找列表中指定元素的索引位置。`index()` 方法的用法如下:
```python
list.index(elem)
```
其中,`list` 是列表对象,`elem` 是要查找的元素。如果列表中存在该元素,则返回其第一次出现的索引位置;如果列表中不存在该元素,则抛出 `ValueError` 异常。
示例:
```python
fruits = ['apple', 'banana', 'orange', 'pear', 'banana']
print(fruits.index('banana')) # 输出 1
```
如果要查找列表中最后一个出现的元素的索引位置,可以使用 `reverse()` 方法和 `index()` 方法组合,如下:
```python
list[::-1].index(elem)
```
其中,`[::-1]` 表示将列表反转。完整示例:
```python
fruits = ['apple', 'banana', 'orange', 'pear', 'banana']
print(len(fruits) - 1 - fruits[::-1].index('banana')) # 输出 4
```
相关问题
python列表find函数的复杂度
Python中的列表(list)没有find函数,但是有index函数可以用来查找列表中某一元素的位置。index函数的时间复杂度为O(n),其中n为列表的长度。具体来说,index函数会从列表的第一个元素开始逐个比较,直到找到匹配的元素或者遍历完整个列表。因此,当列表较长时,index函数的时间复杂度会比较高。如果需要频繁地查找某一元素,可以考虑使用其他数据结构,例如字典(dict)或集合(set)。
Python的find函数
在 Python 中,`find()` 函数是字符串对象的一个内置方法,用于查找子串在原字符串中的位置。这个函数会搜索整个字符串并返回子串第一次出现的位置(从0开始计数),如果子串不存在,则返回-1。
语法如下:
```python
string.find(sub[, start[, end]])
```
- `string`: 需要搜索的原始字符串。
- `sub`: 需要查找的子串。
- `start` (可选): 如果提供,搜索将从该索引位置开始(默认为0)。
- `end` (可选): 如果提供,搜索将截止到该索引位置之前(默认为字符串长度)。
例如:
```python
str = "Hello, World!"
position = str.find("World")
print(position) # 输出: 7
```
如果子串不存在:
```python
str = "Hello, Python!"
position = str.find("Java")
print(position) # 输出: -1
```
阅读全文