c=['a,b,c','a,b,c','a,b']
for item in c:
a=set(item.replace("'",""))
b=list(a)
print b
它返回:
['a','b',',']
我想要的是:
['a','b','c']
如何将这些字符串转换为字符集?
c=['a,b,c','a,b,c','a,b']
for item in c:
a=set(item.replace("'",""))
b=list(a)
print b
它返回:
['a','b',',']
我想要的是:
['a','b','c']
如何将这些字符串转换为字符集?
c = ['a,b,c','a,b,c','a,b']
result = set()
for item in c:
result.update(item.split(','))
print result
这是我所做的:
result
,以便我们可以将值存储在其中c
每个字符串中的字符串,当我们看到“,”字符时,我们将其拆分为一个新的字符串列表。result
使用拆分字符串的值更新集合因为result
是一个集合,它不能包含同一项目的多个实例。所以当我们调用result.update()
任何重复的条目时,都会被自动忽略。
如果您希望结果按所需输出排序,则必须执行以下操作,因为集合是无序的:
result = list(result)
result.sort()
print result
列表有一个内置的排序方法。因此,从集合中创建一个列表然后调用sort()
它会对列表进行适当的排序,这意味着它不会返回任何内容,而是修改列表本身。这样做会给你['a', 'b', 'c']
你想要的问题。
>>> c=['a,b,c','a,b,c','a,b']
>>> print set(unique for charlist in c for unique in charlist.split(','))
set(['a', 'c', 'b'])
c = ['a,b,c', 'a,b,c', 'a,b']
print (set (''.join (c).replace (',', '') ) )