当我运行这段代码时,我收到一条消息,说没有定义名称“readFile”。我怎样才能写下它,使我没有这个错误?我想给self.cities分配一个列表列表。多谢各位
class TSP:
def __init__(self, filename):
self.filename = filename
self.cities = readFile()
def readFile(self):
f = open(self.filename, 'r')
citieslist = []
res = f.readlines()
for line in res:
aList = list(line.split(';'))
for i in range(0,len(aList)):
aList[i] = aList[i].rstrip('\n')
citieslist.append(aList)
return readFile (self.cities)
f.close()
您没有在
init
中使用self
。在readFile
处有一个递归函数。从函数readFile
返回后关闭了文件。您只需剥去整条线即可切断\n
。也不需要返回,因为您可以在Class
内使用引用由于您在
readFile
的接口中省略了filename
的参数,因此基本上否定了readFile
的任何未来用法,您可以执行以下操作我们只需使用
with
语句来处理文件,并使用list comprehension
来合成结果相关问题 更多 >
编程相关推荐