python 好用的比较函数
时间: 2023-08-07 17:12:17 浏览: 80
Python常见工厂函数用法示例
Python 中的比较函数可以在排序、查找、去重等场景中使用。以下是一些常用的比较函数:
1. `sorted()` 函数中的比较函数:可以使用 `key` 参数指定一个函数来决定排序顺序,例如:
```python
# 按照字符串长度排序
arr = ['apple', 'banana', 'cat', 'dog']
sorted_arr = sorted(arr, key=lambda x: len(x))
print(sorted_arr) # ['cat', 'dog', 'apple', 'banana']
```
2. `max()` 和 `min()` 函数中的比较函数:可以使用 `key` 参数指定一个函数来决定最大或最小值,例如:
```python
# 求列表中长度最长的字符串
arr = ['apple', 'banana', 'cat', 'dog']
max_len_str = max(arr, key=lambda x: len(x))
print(max_len_str) # 'banana'
```
3. `list.sort()` 方法中的比较函数:可以使用 `key` 参数指定一个函数来决定排序顺序,例如:
```python
# 按照字符串长度排序
arr = ['apple', 'banana', 'cat', 'dog']
arr.sort(key=lambda x: len(x))
print(arr) # ['cat', 'dog', 'apple', 'banana']
```
4. `set()` 函数中的比较函数:可以使用 `key` 参数指定一个函数来决定去重规则,例如:
```python
# 去除列表中重复的字符串
arr = ['apple', 'banana', 'cat', 'dog', 'cat']
unique_arr = list(set(arr))
print(unique_arr) # ['banana', 'apple', 'cat', 'dog']
# 去除列表中长度相同的字符串
unique_arr = list(set(arr), key=lambda x: len(x))
print(unique_arr) # ['banana', 'apple']
```
这些是常用的比较函数,当然还有其他一些可能会在特定场景中使用的比较函数。
阅读全文