我的代码中出现以下错误。我正在尝试制作一个迷宫求解器,我收到的错误是:
Traceback (most recent call last):
File "./parseMaze.py", line 29, in <module>
m = maze()
TypeError: 'module' object is not callable
我正在尝试创建一个名为maze
的{{1}}对象,但显然我做错了。
我在m
parseMaze.py
这是我的#!/user/bin/env python
import sys
import cell
import maze
import array
# open file and parse characters
with open(sys.argv[-1]) as f:
# local variables
x = 0 # x length
y = 0 # y length
char = [] # array to hold the character through maze
iCell = []# not sure if I need
# go through file
while True:
c = f.read(1)
if not c:
break
char.append(c)
if c == '\n':
y += 1
if c != '\n':
x += 1
print y
x = x/y
print x
m = maze()
m.setDim(x,y)
for i in range (len(char)):
if char(i) == ' ':
m.addCell(i, 0)
elif char(i) == '%':
m.addCell(i, 1)
elif char(i) == 'P':
m.addCell(i, 2)
elif char(i) == '.':
m.addCell(i, 3)
else:
print "do newline"
print str(m.cells)
文件,其中包含迷宫类:
maze.py
我做错了什么?
答案 0 :(得分:38)
应该是maze.maze()
而不是maze()
。
或者您可以将import
声明更改为from maze import maze
。
答案 1 :(得分:0)
问题是import语句,你只能导入一个类而不是模块。 '导入迷宫'是错误而非使用 '来自迷宫进口迷宫'
答案 2 :(得分:0)
我猜你已经覆盖了内置函数/变量&#34;模块&#34;通过设置全局变量&#34; module&#34;。 只需打印模块,查看其中的内容。