web.py轻量级开发框架——python的超轻量级服务器

2024-06-06 00:08

本文主要是介绍web.py轻量级开发框架——python的超轻量级服务器,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

web.py轻量级开发框架——python的超轻量级服务器

运行环境:

操作系统:Ubuntu 12.04 STL 
python版本:2.7.5

1.安装web.py 
打开终端,执行命令:

sudo easy_install web.py

2.安装lpthw.web 
安装lpthw.web的目的纯粹是为了打印log,便于后台查看, 
依旧在终端中,运行命令:

sudo pip install lpthw.web

OK,此时开始写一个简单的程序试一下: 
执行如下命令:

mkdir karlweb
cd karlweb
mkdir bin gothonweb tests docs templates
touch bin/app.py
touch templates/index.html

此时,一个web.py的项目创建完毕,接下来开始编辑, 
执行如下代码:

vi bin/app.py

然后输入如下代码:

import weburls =('/','Index',#url地址的映射'/book','Book')app = web.application(urls, globals())render = web.template.render('templates/')classIndex(object):#此类与‘/’地址映射def GET(self):greeting ="Hello World"return render.index(greeting = greeting)classBook(object):#此类与‘/book’地址映射def GET(self):return render.book()if __name__ =="__main__":app.run()

保存并退出,执行如下命令:

touch templates/index.html
vi templates/index.html

输入如下代码:

$def with(greeting)<html><head><title>Web.py test</title></head><body>$if greeting:I just wanted to say <em style="color: green; font-size: 2em;">$greeting</em>.
$else:<em>Hello</em>, world!</body></html>

此时,运行如如下代码:

python bin/app.py

然后访问localhost:8080/就会出现如下效果: 
I just wanted to say Hello World . 
这时,我们再执行如下命令:

touch templates/book.html
vi templates/book.html

输入如下代码:

<html><head><title>BOOK</title></head><body><center>BOOK</center></body></html>

然后我们访问localhost:8080/book将会看到浏览器显示BOOK。 
从上面的过程可以看出webpy比较不错的集成了mvc设计模式,实现了多层架构, 
而且webpy非常轻量级,值得程序开发人员学习一下

这篇关于web.py轻量级开发框架——python的超轻量级服务器的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1034554

相关文章

轻量级在线服装3D定制引擎Myway简介

我写的面向web元宇宙轻量级系列引擎中的另外一个,在线3D定制引擎Myway 3D。 用于在线商品定制,比如个性化服装的定制、日常用品(如杯子)、家装(被套)等物品的在线定制。 特性列表: 可更换衣服款式,按需定制更换模型可实时更改材质颜色可实时添加文本,并可实时修改大小、颜色和角度,支持自定义字体可实时添加艺术图标,并可实时修改大小、颜色和角度,支持翻转、各种对齐可更改衣服图案,按需求定制

2024.6.24 IDEA中文乱码问题(服务器 控制台 TOMcat)实测已解决

1.问题产生原因: 1.文件编码不一致:如果文件的编码方式与IDEA设置的编码方式不一致,就会产生乱码。确保文件和IDEA使用相同的编码,通常是UTF-8。2.IDEA设置问题:检查IDEA的全局编码设置和项目编码设置是否正确。3.终端或控制台编码问题:如果你在终端或控制台看到乱码,可能是终端的编码设置问题。确保终端使用的是支持你的文件的编码方式。 2.解决方案: 1.File -> S

通过SSH隧道实现通过远程服务器上外网

搭建隧道 autossh -M 0 -f -D 1080 -C -N user1@remotehost##验证隧道是否生效,查看1080端口是否启动netstat -tuln | grep 1080## 测试ssh 隧道是否生效curl -x socks5h://127.0.0.1:1080 -I http://www.github.com 将autossh 设置为服务,隧道开机启动

Python 字符串占位

在Python中,可以使用字符串的格式化方法来实现字符串的占位。常见的方法有百分号操作符 % 以及 str.format() 方法 百分号操作符 % name = "张三"age = 20message = "我叫%s,今年%d岁。" % (name, age)print(message) # 我叫张三,今年20岁。 str.format() 方法 name = "张三"age

【服务器运维】MySQL数据存储至数据盘

查看磁盘及分区 [root@MySQL tmp]# fdisk -lDisk /dev/sda: 21.5 GB, 21474836480 bytes255 heads, 63 sectors/track, 2610 cylindersUnits = cylinders of 16065 * 512 = 8225280 bytesSector size (logical/physical)

【服务器运维】CentOS6 minimal 离线安装MySQL5.7

1.准备安装包(版本因人而异,所以下面的命令中版本省略,实际操作中用Tab自动补全就好了) cloog-ppl-0.15.7-1.2.el6.x86_64.rpmcpp-4.4.7-23.el6.x86_64.rpmgcc-4.4.7-23.el6.x86_64.rpmgcc-c++-4.4.7-23.el6.x86_64.rpmglibc-2.12-1.212.el6.x86_64.r

【服务器运维】CentOS7 minimal 离线安装 gcc perl vmware-tools

0. 本机在有网的情况下,下载CentOS镜像 https://www.centos.org/download/ 1. 取出rpm 有的情况可能不需要net-tools,但是如果出现跟ifconfig相关的错误,就把它安装上。另外如果不想升级内核版本的话,就找对应内核版本的rpm版本安装 perl-Time-Local-1.2300-2.el7.noarch.rpmperl-Tim

Eclipse+ADT与Android Studio开发的区别

下文的EA指Eclipse+ADT,AS就是指Android Studio。 就编写界面布局来说AS可以边开发边预览(所见即所得,以及多个屏幕预览),这个优势比较大。AS运行时占的内存比EA的要小。AS创建项目时要创建gradle项目框架,so,创建项目时AS比较慢。android studio基于gradle构建项目,你无法同时集中管理和维护多个项目的源码,而eclipse ADT可以同时打开

一道经典Python程序样例带你飞速掌握Python的字典和列表

Python中的列表(list)和字典(dict)是两种常用的数据结构,它们在数据组织和存储方面有很大的不同。 列表(List) 列表是Python中的一种有序集合,可以随时添加和删除其中的元素。列表中的元素可以是任何数据类型,包括数字、字符串、其他列表等。列表使用方括号[]表示,元素之间用逗号,分隔。 定义和使用 # 定义一个列表 fruits = ['apple', 'banana

Python应用开发——30天学习Streamlit Python包进行APP的构建(9)

st.area_chart 显示区域图。 这是围绕 st.altair_chart 的语法糖。主要区别在于该命令使用数据自身的列和指数来计算图表的 Altair 规格。因此,在许多 "只需绘制此图 "的情况下,该命令更易于使用,但可定制性较差。 如果 st.area_chart 无法正确猜测数据规格,请尝试使用 st.altair_chart 指定所需的图表。 Function signa