2017-02-11 107 views
0

我试图用python运行aiml文件。 myfile.pymyaiml.aiml在一个目录中。当我在python目录下的目录中双击myfile.py时,aiml文件被加载,但是当我用命令:python directory\myfile.py从cmd运行它时,aiml文件未加载。有什么不同?Python - 从目录加载AIML文件

我的代码:

import aiml 

k = aiml.Kernel() 

k.learn("myaiml.aiml") 

while True: 
    input = raw_input("> ") 
    response = k.respond(input) 
    print response 

当我尝试更改代码以k.learn("C:Python27\directory\myaiml.aiml"),它不能加载了。

我试着将它们移动到python目录,并使用命令运行它:python myfile.py它工作。但是如果我想在其他目录中创建这些文件并从cmd运行它。它会是吗?

回答

0

我解决了这个使用真实路径:

import aiml 
import os 

path = os.path.dirname(os.path.realpath(__file__)) 

k = aiml.Kernel() 

k.learn(path + "/myaiml.aiml") 

while True: 
    input = raw_input("> ") 
    response = k.respond(input) 
    print response 

希望它能帮助。