# Definition for an interval.
# class Interval:
# def __init__(self, s=0, e=0):
# self.start = s
# self.end = e
class Solution:
def merge(self, intervals):
"""
:type intervals: List[Interval]
:rtype: List[Interval]
"""
out = []
for i in sorted(intervals, key=lambda i: i.start):
if out and i.start <= out[-1].end:
out[-1].end = max(out[-1].end, i.end)
else:
out += i
return out
第二行,出+ = i,出现此错误:
“间隔”对象不可迭代。
我相信添加逗号后会起作用:
出+ =我,
但是我不知道为什么,有人可以解释吗?
答案 0 :(得分:2)
如果要将单个项目添加到列表的末尾,通常使用append
。
out.append(i)
您还可以通过使用+=
添加可迭代项或元素序列(例如列表和元组)来扩展列表。
i
不是序列,因此out += i
不起作用。
但是i,
是一个序列。这是一个包含i
的元组。
所以
out += i,
有效。就像你写的一样
out += (i,)