我有一个python中的文件名列表,我想从所有的文件名中构造一个集合。
filelist=[]
for filename in filelist:
set(filename)
这似乎并不奏效。怎么做呢?
我有一个python中的文件名列表,我想从所有的文件名中构造一个集合。
filelist=[]
for filename in filelist:
set(filename)
这似乎并不奏效。怎么做呢?
当前回答
最直接的解决方法是:
s = set(filelist)
原始代码中的问题是没有将值分配给集合。下面是修改后的代码:
s = set()
for filename in filelist:
s.add(filename)
print(s)
其他回答
上面所有的答案都是正确的,但如果你想保持列表的顺序,你需要按照下面的步骤进行
list(dict.fromkeys(your_list))
这里有另一个解决方案:
>>>list1=["C:\\","D:\\","E:\\","C:\\"]
>>>set1=set(list1)
>>>set1
set(['E:\\', 'D:\\', 'C:\\'])
在这段代码中,我使用了set方法,以便将其转换为一个集合,然后从列表中删除所有重复的值
最直接的解决方法是:
s = set(filelist)
原始代码中的问题是没有将值分配给集合。下面是修改后的代码:
s = set()
for filename in filelist:
s.add(filename)
print(s)
简单地说:
new_list = set(your_list)
用这样的迭代方式构造集合的一般方法是:
aset = {e for e in alist}