我来自C#背景,我很难弄清楚如何运行python脚本。

因此,我编写了这个简单的递归二进制搜索,并在网上发现可以执行以下操作:

def chop(array, search, lo, high):

    if lo <= high:
         middle = (high + lo) /2
         if array[middle] == search:
             return 'true'
         elif search > array[middle]:
             return chop(array, search, middle + 1, high)
         else:
             return chop(array, search, lo, middle -1)
     return 'false'



if __name__ == '__main__':
    a = [1,2,3,4,5,6,7,8,9,10]
    print chop(a, 21, 0, len(a) -1)


__main__将是我从中调用chop函数的主要方法,但是它不起作用。我将其保存在test.py文件中。另外,尽管我可以以某种方式仅从Python Shell运行chop函数,但我不知道如何执行。请指教。谢谢。

最佳答案

如果您位于脚本所在的目录中,请运行

python test.py


如果要从解释器运行chop函数,请在脚本所在的目录中启动解释器并执行

import test
test.chop([...]) # your array


那应该做。如果不是,则您的代码中可能存在语法或其他错误,例如您在问题注释中已经讨论过的缩进。

关于python - 运行python脚本的不同方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9832429/

10-13 05:50