Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/vba/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 查找给定maze.txt文件的解决方案_Python - Fatal编程技术网

Python 查找给定maze.txt文件的解决方案

Python 查找给定maze.txt文件的解决方案,python,Python,我如何修复这个程序,问题是当它打印出坐标时,它给我一个7作为开始和结束,我将感谢你的帮助,谢谢 start = (len(data)) finish = (len(data)) pos= [] for i in range(len(pos)): for j in range(len(pos[i])): if pos[i][j] == "S": start=(i,j) elif pos[i][j] == "F":

我如何修复这个程序,问题是当它打印出坐标时,它给我一个7作为开始和结束,我将感谢你的帮助,谢谢

start = (len(data))
finish = (len(data))
pos= []
for i in range(len(pos)):
    for j in range(len(pos[i])):
        if pos[i][j] == "S":
            start=(i,j)

        elif  pos[i][j] == "F":
            finish=(i,j)

print "S found in",start,
print "\nF found in",finish,"\n"

查看代码的开头:

start = (len(data))
finish = (len(data))
pos= []
for i in range(len(pos)):

len(pos)
当然是零(您刚刚将空列表分配给了
pos
,所以那么这个长度可能只有0吗?!),所以循环执行零次,
start
finish
永远不会改变,在循环之后,你为它们打印的内容正是你在这里分配给它们的内容——尽管所有多余的括号都是相同的整数(你告诉我们是
7
,所以想必无论
数据是什么,它的长度都是7)。

当我运行这个程序时,当它打印坐标时,它打印出开始和结束a 7的坐标,它应该是开始(3,4)和结束(0,2)坐标HM。。。这是一个迷宫,我需要得到开始和结束的坐标,但我先打印它们,但没有打印我想要的。这是程序开始=(len(data))结束=(len(data))结束=(len(data))pos=[]对于范围内的i(len(pos)):对于范围内的j(len(pos[i]):如果pos[i][j]=“S”:start=(i,j)elif pos[i][j]=“F”:finish=(i,j)print“S found in”,start,print“\nF found in”,finish,“\n”编辑以修复代码格式。我刚刚计算出7是txt文件中的行数,我如何解决这个问题?txt文件有7行,每行10个元素。你可以尝试使用
数据
列表——你永远不会在代码中的任何地方使用它(除了开始时对
len
的两个调用),而是给
pos
分配一个空列表,然后“使用”
pos
(这显然没有任何作用)。无论你想解决与
数据
相关的任何问题,你怎么可能梦想着解决它,而从不使用
数据
包含的内容@alberto,您可以使用任何文本编辑器更改代码。大概你应该将它更改为删除愚蠢的分配给
pos
,并将
pos
的所有用法更改为
数据的用法。哦,与其奇怪地初始化start和finish,不如在开始时将
None
分配给它们。