使用语言:python3.6
使用框架:web.py
1.安装框架:
由于使用python3 ,所以在控制台中使用以下命令进行安装:
pip install web.py==0.40.dev0
2.hello world:
新建一个python文件,写入如下代码:
import web
urls = ( '/', 'index')
class index:
def GET(self):
return "Hello, world!"
if __name__ == "__main__":
app = web.application(urls, globals())
app.run()
运行代码,在浏览器中输入127.0.0.1:8080,可以看到Hello, world!字样。
源码解释:
1.urls 元组中,第一个元素'/'是正则表达式,用来匹配url,第二个元素是接受请求的类名称。
更改代码举例:
urls=('/test','result')
这句则意味着:访问127.0.0.1:8080/test 就会调用result类。
2.index类中,只定义了一个GET方法可以返回一个句子:Hello, world!,GET方法用于请求网页文本,注:浏览器默认请求方式即为get。
3.创建一个列举这些url的application(不清楚这个是什么),然后运行一下run函数就可以运行了。
3.加个模板
在当前目录下新建一个文件夹命名为templates,在templates文件夹下新建一个test_01.html文件。
写入如下内容
$def with (name=None)
$if name:
I just wanted to say <em>hello</em> to $name.
$else:
<em>Hello</em>, world!
python 修改如下:
import web
render = web.template.render('templates/')
urls = ( '/', 'index')
class index:
def GET(self):
i = web.input(name=None)
return render.test_01(i.name)
if __name__ == "__main__":
app = web.application(urls, globals())
app.run()
运行代码,在浏览器中输入127.0.0.1:8080/?name=Bob,可以看到I just wanted to say hello to Bob.字样。在浏览器中输入127.0.0.1:8080,可以看到Hello, world!字样。
源码解释:
html文件:
def with (表示从模板将从这后面取值)
$位于代码段之前
python文件:
render = web.template.render('templates/')
告诉web.py到templates文件夹中查找模板。
i = web.input(name=None)
让用户自行输入名字,并将名字赋给name。
return render.test_01(i.name)
返回templatems文件夹中test_01文件,并给其中的name赋予上一步用户输入的名字(上一步赋给了i中的name)。