如何在 Python 中将多个字符串添加到一个集合中?

新手上路,请多包涵

我是 Python 的新手。当我用 add() 函数添加一个字符串时,它运行良好。但是当我尝试添加多个字符串时,它会将它们视为字符项。

 >>> set1 = {'a', 'bc'}
>>> set1.add('de')
>>> set1
set(['a', 'de', 'bc'])
>>> set1.update('fg', 'hi')
>>> set1
set(['a', 'g', 'f', 'i', 'h', 'de', 'bc'])
>>>

我想要的结果是 set(['a', 'de', 'bc', 'fg', 'hi'])

这是否意味着 update() 函数不适用于添加字符串?

使用的Python版本为:Python 2.7.1

原文由 JackWM 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 454
2 个回答

update 将其参数视为集合。因此提供的字符串 'fg' 被隐式转换为一组“f”和“g”。

原文由 user58697 发布,翻译遵循 CC BY-SA 3.0 许可协议

您给了 update() 多个可迭代对象(字符串是可迭代的),因此它遍历每个对象,添加每个对象的项目(字符)。给它一个包含您要添加的字符串的可迭代对象(例如列表)。

 set1.update(['fg', 'hi'])

原文由 kindall 发布,翻译遵循 CC BY-SA 4.0 许可协议

推荐问题