在Python中将值附加到集合中

我有这样的一套: app

keep = set(generic_drugs_mapping[drug] for drug in drug_input)

如何将值[0,1,2,3,4,5,6,7,8,9,10]添加到此集合中? this


#1楼

你也能够使用| 运算符链接两个集合(集合理论中的集): 编码

>>> my_set = {1}
>>> my_set = my_set | {2}
>>> my_set
{1, 2}

或者使用|=的简短形式: spa

>>> my_set = {1}
>>> my_set |= {2}
>>> my_set
{1, 2}

注意:在Python 2.7以前的版本中,使用set([...])而不是{...}code


#2楼

定义集 字符串

a = set()

使用add追加单个值 input

a.add(1)
a.add(2)

使用update附加可迭代值 date

a.update([3,4])

检查你的收藏 循环

a
Out[*n*]: {1, 2, 3, 4}

这就是它-记住, 更新若是是迭代(又名列表或元组)或添加若是没有。 快乐的编码! map


#3楼

keep.update(yoursequenceofvalues)

例如, keep.update(xrange(11))为您的具体示例。 或者,若是因为某些其余缘由必须在循环中生成值,

for ...whatever...:
  onemorevalue = ...whatever...
  keep.add(onemorevalue)

可是,固然,若是可行的话,在单个.update调用中批量执行它会更快更方便。


#4楼

使用这样的update

keep.update(newvalues)

#5楼

这个问题是当人们查找“Python如何添加要设置的元素”时出如今Google上的第一个问题,因此值得注意的是,若是你想将一个完整的字符串添加到一个集合中,它应该添加.add() ,而不是.update()

假设你有一个字符串foo_str其内容是'this is a sentence' ,你有一些设置bar_set等于set()

若是你执行bar_set.update(foo_str) ,你的集合的内容将是{'t', 'a', ' ', 'e', 's', 'n', 'h', 'c', 'i'}

若是你执行bar_set.add(foo_str) ,你的集合的内容将是{'this is a sentence'}

相关文章
相关标签/搜索