2012-09-17 42 views
0

我想运行一个python食谱,我发现,但我不知道如何,因为它从另一个出口!例如,我想测试the code here。 我已经下载了它,并下载this one因为它使用它。测试蟒配方

所以,我怎么能通过传递所需参数如下测试的代码?

>>> G = {'s':{'u':10, 'x':5}, 'u':{'v':1, 'x':2}, 'v':{'y':4}, 'x':{'u':3, 'v':9, 'y':2}, 'y':{'s':7, 'v':6}} 
>>> Dijkstra.Dijkstra(G,'s','v') 

我已经添加在Python路径之一的两个文件,和进口两种,但仍然得到错误 能否请您给我简单的方法来测试此代码一些建议吗?

+2

你什么错误? – Dougal

+0

我在python的公认路径中添加两个文件后尝试。 >>> import优先级词典 >>> from Prioritydictionary import * >>> import Dijkstra >>> G = {'s':{'u':10,'x':5},'u':{ 'v':1, 'X':2}, 'v':{ 'Y':4}, 'X':{ 'U':3, 'v':9, 'Y':2},' Y ':{' s '的:7, 'v':6}} >>> Dijkstra.Dijkstra(G,' S', 'v') 回溯(最近最后调用): 文件 “”,第1行,在 文件“/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/Dijkstra.py”,第52行,在Dijkstra Q = priorityDictionary()#est.dist。的非最终垂直。 NameError:全局名称'priorityDictionary'未定义 – asa

+1

请编辑该问题以添加信息,而不是在评论中粘贴代码和错误;这几乎是不可读的。 – geoffspear

回答

1

你真的应该把这些文件在当前目录下,如果你只是测试的,而不是把他们/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/为路径是保留给Python标准库。

由于Dijkstra代码从priodict导入,似乎需要将第二个配方“优先级字典”放在名为priodict.py的文件中。因此,您应该在当前目录中包含以下文件:Dijkstra.pypriodict.py。然后你可以启动Python并执行import Dijkstra,它应该可以工作。

另外,不要修改Dijkstra算法代码删除import,你显然没有...