python编写一个函数,接收列表作为参数,如果一个元素在列表中不止一次,则返回true,但不要改变原来列表的值。同时编写调用这个函数的输出测试结果的程序
时间: 2024-11-29 17:38:24 浏览: 1
在Python中,你可以创建一个名为`has_duplicates`的函数,它接受一个列表作为输入,检查其中是否存在重复的元素,并返回布尔值表示是否有重复。为了保持原列表不变,我们可以利用集合数据结构来进行判断,因为集合中的元素都是唯一的。
```python
def has_duplicates(lst):
# 使用集合获取唯一元素,然后比较长度
return len(lst) != len(set(lst))
# 测试函数
def test_has_duplicates():
# 创建一些包含重复元素的列表
test_lists = [
[1, 2, 3, 4, 5],
[1, 2, 2, 3, 4],
['a', 'b', 'c', 'd', 'd'],
['apple', 'banana', 'orange', 'apple']
]
for lst in test_lists:
print(f"对于列表 {lst}:")
result = has_duplicates(lst)
if result:
print("有重复元素,返回True")
else:
print("无重复元素,返回False")
if __name__ == "__main__":
test_has_duplicates()
```
当你运行`test_has_duplicates()`时,会得到每个测试列表的重复元素检测结果:
1. 对于列表 [1, 2, 3, 4, 5]:无重复元素,返回False
2. 对于列表 [1, 2, 2, 3, 4]:有重复元素,返回True
3. 对于列表 ['a', 'b', 'c', 'd', 'd']:有重复元素,返回True
4. 对于列表 ['apple', 'banana', 'orange', 'apple']:有重复元素,返回True
阅读全文