python中list set互转
时间: 2024-12-11 08:33:49 浏览: 14
在Python中,列表和集合(set)之间可以互相转换,这是因为它们的本质区别:列表是一种有序且可包含重复元素的数据结构,而集合则是无序的且不允许有重复元素。
**从列表转为集合(List to Set):**
你可以使用内置函数 `set()` 来将列表转换成集合。例如:
```python
my_list = [1, 2, 2, 3, 4]
my_set = set(my_list)
print(my_set) # 输出 {1, 2, 3, 4}
```
**从集合转为列表(Set to List):**
由于集合是无序的,所以直接将集合转换回列表会保持元素的插入顺序(在Python 3.7及以上版本),如果需要保持原有顺序,可以先创建一个空列表,然后逐个添加集合的元素:
```python
my_set = {1, 2, 3, 4}
my_list = list(my_set)
print(my_list) # 输出 [1, 2, 3, 4] 或者 [2, 1, 4, 3](取决于Python版本)
```
值得注意的是,这里列表的顺序取决于集合内部元素迭代的顺序,而不是其添加到集合时的顺序。
阅读全文