l.append [i],对象不可订阅?

时间:2012-04-12 21:20:33

标签: python list for-loop append

当我这样做时:

l = []
for i in range(10):
    if i%3 == 0 or i%5 == 0:
        l.append[i]
print sum(l)

我得到了

Traceback (most recent call last):
  File "PE1.py", line 4, in <module>
    l.append[i]
TypeError: 'builtin_function_or_method' object is not subscriptable

真的没有办法追加通过条件的所有i吗?

2 个答案:

答案 0 :(得分:14)

append是一种方法,您使用函数调用语法。

l.append(i)

此外,在这种情况下更优雅的方法是使用列表理解:

l = [i for i in range(10) if i % 3 == 0 or i % 5 == 0]

答案 1 :(得分:3)

l.append[i]

错误的括号。