迭代时的TypeError

时间:2015-10-18 20:32:26

标签: python

我正在尝试加载一个3x3网格,显示外部文件中的9个单词,但下面的代码会产生此错误:

Traceback (most recent call last):
  File "C:\Users\Name\Documents\IT Work\New folder\Version 4.py", line 49, in <module>
    for line in range:
TypeError: 'builtin_function_or_method' object is not iterable

代码:

ay = open('Words.txt','r')
output_list = ay.read().strip().split('.')

with open('Words.txt') as f:
    words = f.read().splitlines()

for line in (ay):
        f.append(line.strip())

if len(ay) == 10:
                print(listofwords[0]+' '+listofwords[1]+' '+listofwords[2])
                print(listofwords[3]+' '+listofwords[4]+' '+listofwords[5])
                print(listofwords[6]+' '+listofwords[7]+' '+listofwords[8])

for line in range:
    print(5)

如何解决此错误?

1 个答案:

答案 0 :(得分:1)

在Python中,应该使用iterable调用for语句。 range是一个在Python 2.x中返回一个列表的函数(一种特殊的可迭代类型),你应该传递一个数字,以便它返回所需的迭代。

只需将代码更改为:

number_of_iterations = 5

for line in range(number_of_iterations):
    print(5)

希望它有所帮助,