我在代码的第6行得到了一个AttributeError
:
date_set.append(date).
不明白为什么。有人能解释一下我的错误吗?
dates = [[5, 7], [7, 9], [9,10],[8, 9]]
def answer(dates):
date_set = set()
for date in dates:
if date[0] <= date[1]:
date_set.append(date)
date_total = [date for date in date_set]
return len(date_total)
date_set.append(date)
set()
没有追加()方法
您应该使用set.update()
方法或set.add()
由于没有这样的属性,您会得到一个属性错误。单词append
的意思是加到末尾,但集合是无序的。要向集合添加内容,请使用.add()
:
for date in dates:
if date[0] <= date[1]:
date_set.add(date)
不过,更简单的方法是使用集合理解:
date_set = {date for date in dates if date[0] <= date[1]}
不过,您甚至不需要创建一个集合。只需这样做:
def answer(dates):
return sum(1 for date in dates if date[0] <= date[1])