此代码段在普通的python解释器中工作,只是一个简单的二进制搜索。我需要添加/更改此代码才能将其作为网页运行?
def binarySearch(s,array):
first=0;
last=len(array);
midpoint=first+(last-first)/2;
midpoint=int(midpoint);
#print(midpoint);
print (first,last,array[midpoint]);
if array[midpoint]==s: return (first,last,array[midpoint]);
while midpoint>1:
if s>array[midpoint]:
first=midpoint;
print (first,last,array[midpoint]);
elif s<array[midpoint]:
last=midpoint;
print (first,last,array[midpoint]);
elif s==array[midpoint]:
return (first,last,array[midpoint]);
midpoint=first+(last-first)/2;
midpoint=int(midpoint);
#print(midpoint);
return None;
dArray=range(300);
print(binarySearch(90,dArray));
答案 0 :(得分:0)
&#34;改为使其在网络服务器中运行&#34;在这种情况下,这并不意味着什么。你的代码(好吧,你必须修复它以便它实际运行而不是引发异常,但让我们假装你这样做)将只能用作CGI或mod_python
脚本。您print
(或以其他方式写入stdout)的所有内容都将成为浏览器看到的响应。
您可能需要在程序顶部添加#!/usr/bin/env python3
或类似功能 - 如果您想在shell中使用./hello.py
而不是{{}}运行它,就像您需要一样{1}}。然后,只需配置您的服务器。如果将Apache配置为允许python3 hello.py
目录中的CGI,并使用模式755将脚本复制到该目录,则浏览到/cgi-bin/
的任何人都将返回文本http://myserver.example.com/cgi-bin/hello.py
。如果您将Apache配置为使用Hello, world!
而不是CGI运行.py
脚本,那么现在您将看到完全相同的事情,除非您的服务器上的速度稍快或负载稍轻。