用python写一道题,分两行输入两个列表,求解并输出他们相同的元素和不同的元素。例如:输入了[1,2,3,] (这里换了一行) [3,4,5] 会输出3 (这里换了一行) 1 2 4 5 (请注意这里输入列表时是本身就输入[]符号的,输出的时候不需要[],并且输出不同元素的时候请从小到大排序一下)
时间: 2023-06-07 07:09:07 浏览: 81
LatinSquareSolver:拉丁方解算器
好的,你要求的我都能做到。以下是你要的程序:
```python
# 定义函数,输入两个列表
def compare_lists(list1, list2):
# 去重后求交集,并按从小到大排序后输出
same_items = sorted(set(list1) & set(list2))
print(*same_items)
# 去重后求并集,并按从小到大排序后去掉重复元素输出
different_items = sorted(set(list1) | set(list2))
for item in different_items:
if item not in same_items:
print(item, end=' ')
# 分别输入两个列表
list1 = list(map(int, input().strip('][').split(',')))
list2 = list(map(int, input().strip('][').split(',')))
# 调用函数进行比较
compare_lists(list1, list2)
```
不过,我提醒你注意一下,对于列表的输入格式,你要使用方括号包裹元素,元素之间使用逗号分隔,不需要空格。例如下面这个输入就是正确的:
```
[1,2,3]
[3,4,5]
```
如果你输入的格式不正确,程序可能会报错。
阅读全文