如何创build只有一个元素的Python集?
如果我有一个string,并且想创build一个最初只包含那个string的集合,那么Pythonic的方法会比以下更多吗?
mySet = set() mySet.add(myString)  下面给我一组myString中的字母: 
 mySet = set(myString) 
	
在2.7和3.x中,你可以使用:
 mySet = {'abc'} 
例如,这个简单的方法:
 mySet = set([myString]) 
对于Python2.7 + :
 set_display ::= "{" (expression_list | comprehension) "}" 
例:
 >>> myString = 'foobar' >>> s = {myString} >>> s set(['foobar']) >>> s = {'spam'} >>> s set(['spam']) 
 请注意,空{}不是一个set ,它是一个dict 。 
  set帮助: 
 class set(object) | set() -> new empty set object | set(iterable) -> new set object 
 正如你所看到的, set()需要迭代,string也是可迭代的,所以它将string转换为一个集合。 
 把这个string放在一些迭代器中,并传递给set() : 
 >>> set(('foo',)) #tuple set(['foo']) >>> set(['foo']) #list set(['foo']) 
  set(obj)将要迭代槽obj并添加所有独特的元素到集合中。 由于string也是可迭代的,如果你传递一个string给set()那么你得到了你的集合中唯一的字母。 你可以把你的obj首先列表: 
 set(["mystring"]) 
 不过那不是优雅的海事组织。 你知道,即使是创build一个空字典,我们也喜欢在dict()之上。 同样在这里。 我wolud使用以下语法: 
 myset = {"mystring"} 
请注意,对于元组,在它之后需要逗号:
 mytuple = ("mystring",) 
 如果该组也不可能改变,请考虑使用一个frozenset : 
 mySet = frozenset([myString])