如何添加集合的元素并打印它们的和
我是通过将集合转换成列表来完成的,这是他们的任何其他方式,而不需要将集合转换为列表。
a1 = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
x = 0
sum = 0
while x != 10:
z = list(a1)[x]
sum += z
x += 1
print(sum)
a1 = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
x = 0
sum = 0
while x != 10:
z = a1[x]
sum += z
x += 1
print(sum)
追溯(最近一次调用):文件"C:/Users/Usman/AppData/Local/Programs/Python/Python37/ddd.py",第5行,在z=(a1x) TypeError中:“set”对象不可订阅
我希望结果是55
发布于 2019-06-01 15:51:41
>>> a = set(range(1, 10+1)) # a = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
>>> sum(a)
55
>>>
set
迭代是无序的,因此没有索引。这就解释了你得到的TypeError
。
发布于 2019-06-01 15:51:13
您可以使用sum
函数。
a = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
print(sum(a))
发布于 2019-06-01 16:23:26
与其他答案一样,sum
的使用对此非常有用。然而,如果不使用sum
,OP可能会尝试使用这样的构造,这在需要其他操作的上下文中可能很有用,而不仅仅是sum
。因此,我也在这里张贴它:
>>> sum = 0
>>> for item in a1:
... sum += item
...
>>> print(sum)
55
>>>
https://stackoverflow.com/questions/56408157
复制相似问题