python列表去重练习题
时间: 2024-10-25 21:00:53 浏览: 18
Python中去除列表重复元素可以通过多种方法实现,这里提供几个常见的例子:
1. **使用set**:由于集合(Set)不允许有重复元素,可以先将列表转换为集合,然后再转回列表。
```python
lst = [1, 2, 2, 3, 4, 4, 5]
unique_lst = list(set(lst))
```
2. **使用列表推导式**:
```python
lst = [1, 2, 2, 3, 4, 4, 5]
unique_lst = [x for i, x in enumerate(lst) if lst.index(x) == i]
```
3. **使用字典**(如果列表元素可哈希):
```python
lst = [1, 2, 2, 3, 4, 4, 5]
unique_lst = list(dict.fromkeys(lst))
```
4. **传统循环**:
```python
lst = [1, 2, 2, 3, 4, 4, 5]
unique_lst = []
for item in lst:
if item not in unique_lst:
unique_lst.append(item)
```
相关问题
Python列表字典练习题
好的,以下是一些Python列表和字典操作的练习题:
1. 编写一个程序,输入一个列表,将其中的所有偶数取出来,并存入新的列表中。
2. 编写一个程序,输入一个列表和一个整数n,将其中所有小于n的元素取出来,并存入新的列表中。
3. 编写一个程序,输入一个列表,将其中的所有元素去重,并按照从小到大的顺序排序,然后输出结果。
4. 编写一个程序,输入一个字典,将其中所有的键和值互换,然后输出结果。
5. 编写一个程序,输入一个字典和一个字符串,判断该字符串是否为字典中某个键的值,如果是,则输出该键;如果不是,则输出"not found"。
希望这些练习题能够帮助你熟练掌握Python列表和字典操作的技能。
python列表练习题
1. 翻转列表
给定一个列表,将它翻转过来。例如:
输入: [1,2,3,4,5]
输出: [5,4,3,2,1]
解法:
```python
def reverse_list(lst):
return lst[::-1]
```
2. 合并两个排序列表
给定两个已经排序的列表,将它们合并成一个排序列表。例如:
输入: nums1 = [1,2,3], nums2 = [2,5,6]
输出: [1,2,2,3,5,6]
解法:
```python
def merge_lists(lst1, lst2):
merged = []
i, j = 0, 0
while i < len(lst1) and j < len(lst2):
if lst1[i] < lst2[j]:
merged.append(lst1[i])
i += 1
else:
merged.append(lst2[j])
j += 1
merged += lst1[i:]
merged += lst2[j:]
return merged
```
3. 查找列表中的最大值和最小值
给定一个列表,找到其中的最大值和最小值。例如:
输入: [3, 5, 1, 8, 2]
输出: 最大值为8,最小值为1
解法:
```python
def find_max_min(lst):
if not lst:
return None, None
max_val = lst[0]
min_val = lst[0]
for val in lst:
if val > max_val:
max_val = val
if val < min_val:
min_val = val
return max_val, min_val
```
4. 列表去重
给定一个列表,将其中的重复元素去掉。例如:
输入: [1,2,2,3,3,4,5,5]
输出: [1,2,3,4,5]
解法:
```python
def remove_duplicates(lst):
return list(set(lst))
```
5. 计算列表中元素出现的次数
给定一个列表和一个元素,计算这个元素在列表中出现的次数。例如:
输入: [1,2,2,3,3,4,5,5], 2
输出: 2
解法:
```python
def count_occurrences(lst, val):
return lst.count(val)
```
以上是一些常见的Python列表练习题,希望对你有帮助!
阅读全文