0

我正在尝试用 python 运行一个目标文件。myfile.pymyaiml.aiml在一个目录中。myfile.py当我在 python 目录中双击我的目录时,会加载 aiml 文件,但是当我从 cmd 使用 command: 运行它时python directory\myfile.py,不会加载 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 运行它。可以吗?

4

1 回答 1

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

希望能帮助到你。

于 2017-10-18T16:17:44.707 回答