普通列表'类型'对象不可订阅

时间:2015-03-25 15:38:15

标签: python list python-3.x pycharm typeerror

numbers = [2 , 5 , 10]
for n in range[1,20]:
    if n in numbers:
        continue
    print (n)

我收到此错误

C:\Python34\python.exe "F:/google drive/3d projects/python/untitled/0001.py"
Traceback (most recent call last):
File "F:/google drive/3d projects/python/untitled/0001.py", line 2, in <module>
        for n in range[1,20]:
    TypeError: 'type' object is not subscriptable

寻找答案,但没有发现它是python的新手所以不要生气如果这是一个愚蠢的qustion这个代码在youtube上的教程及其工作中使用的奇怪之处 我使用pycharm在我的python app或ide

中有什么问题

2 个答案:

答案 0 :(得分:6)

range是一个应该是range(1,20)

的函数

这是for n in range[1,20]:行应该阅读

for n in range(1,20):

正如您在documentation

中所看到的
  

range(start, stop[, step])
   这是一个多功能的 函数 ,用于创建包含算术进度的列表

(强调我的)

小型演示

>>> numbers = [2 , 5 , 10]
>>> for n in range(1,20): 
...    if n in numbers:
...        continue
...    print (n)
1
3
4
6
7
8
9
11
12
13
14
15
16
17
18
19

答案 1 :(得分:0)

您需要使用括号而不是方括号,for n in range[1,20]:这应该是for n in range(1,20):

In [106]:

numbers = [2 , 5 , 10]
for n in range(1,20): #<--
    if n in numbers:
        continue
    print (n)
1
3
4
6
7
8
9
11
12
13
14
15
16
17
18
19