Python 2.7 - AI程序

时间:2015-11-05 01:17:46

标签: python-2.7

我正在制作一个人工智能程序。 (各种各样的) 到目前为止它只是打印变量,如果var等于0则复制自己。如果它等于其他任何东西,那么它打印var并要求你退出。唯一的问题是,它一直在运行,我疲惫的眼睛似乎无法找到原因。任何人都可以帮我弄清楚为什么它一直在运行?

继承我的代码:

import os

def AI():
    var = 0

    if var == 0:
        var += 1
        print ("var equals 0")
        filename = raw_input("Name your file: ")
        filesave = raw_input("Location of your file: ")
        fptr = open(filesave + filename, "w")
        fptr.write(AI())
    else:
        print ("var equals " + str(var))
        exit = raw_input("exit?")
AI()

1 个答案:

答案 0 :(得分:0)

你递归地调用AI,它永远不会有机会达到你的其他声明。你可以这样做:

def AI(initial = True):
    var = 0

    if not initial:
        var = raw_input("exit?")
        print ("var equals " + str(var))

    if var == 0:
        print ("var equals 0")
        filename = raw_input("Name your file: ")
        filesave = raw_input("Location of your file: ")
        fptr = open(filesave + filename, "w")
        fptr.write(AI(False))

AI()