LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

Python web.py 一個(gè)輕量級(jí)、簡(jiǎn)潔的 Python Web 框架簡(jiǎn)單入門

admin
2025年7月15日 10:30 本文熱度 119

web.py 是一個(gè)輕量級(jí)、簡(jiǎn)潔的 Python Web 框架,由 Aaron Swartz 開(kāi)發(fā)。它以簡(jiǎn)單直接的設(shè)計(jì)哲學(xué)著稱,適合快速構(gòu)建小型 Web 應(yīng)用和 API接口實(shí)現(xiàn)。

核心特點(diǎn):

  1. 1. 極簡(jiǎn)設(shè)計(jì):代碼量少,核心文件僅一個(gè) web 模塊
  2. 2. 零配置:開(kāi)箱即用,無(wú)需復(fù)雜配置
  3. 3. URL 路由:靈活的 URL 映射機(jī)制
  4. 4. 模板引擎:內(nèi)置簡(jiǎn)單模板系統(tǒng)
  5. 5. 數(shù)據(jù)庫(kù)支持:內(nèi)置數(shù)據(jù)庫(kù)訪問(wèn)工具
  6. 6. HTTP 工具:完善的請(qǐng)求/響應(yīng)處理

安裝 web.py

通過(guò) pip 安裝:

pip install web.py

注意:Python 3 請(qǐng)使用 pip install web.py==0.62(0.62+ 版本支持 Python 3)


基礎(chǔ)配置

創(chuàng)建基礎(chǔ)應(yīng)用結(jié)構(gòu):

myapp/
├── app.py         # 主程序
├── templates/     # 模板目錄
   └── index.html
└── static/        # 靜態(tài)文件
    └── style.css

使用示例

示例 1:基礎(chǔ) Web 應(yīng)用

# app.py
import web

# URL 路由配置
urls =(
    '/','Index',
    '/hello/(.*)','Hello'
)

app = web.application(urls,globals())

classIndex:
    defGET(self):
        return"Welcome to web.py!"

classHello:
    defGET(self, name):
        returnf"Hello, {name}!"

if __name__ =="__main__":
    app.run()

運(yùn)行應(yīng)用:

python app.py

訪問(wèn):

  • ? http://localhost:8080/
  • ? http://localhost:8080/hello/Leo

示例 2:使用模板引擎

<!-- templates/index.html -->
<html>
<head><title>web.py Demo</title></head>
<body>
    <h1>$title</h1>
    <ul>
    $for item in items:
        <li>$item</li>
    </ul>
</body>
</html>
# app.py (添加新路由)
urls =(
    '/','Index',
    '/list','List'
)

render = web.template.render('templates/')

classList:
    defGET(self):
        data ={
            "title":"Shopping List",
            "items":["Apples","Bananas","Coffee"]
        }
        return render.index(**data)

示例 3:表單處理

# 添加表單路由
urls =(
'/form','FormHandler'
)

classFormHandler:
defGET(self):
return'''<form method="post">
                    <input type="text" name="name">
                    <button>Submit</button>
                  </form>'''


defPOST(self):
        data = web.input()
return f"Received: {data.name}"

示例 4:數(shù)據(jù)庫(kù)操作(SQLite)

# 添加表單路由
urls =(
    '/form','FormHandler'
)

classFormHandler:
    defGET(self):
        return'''<form method="post">
                    <input type="text" name="name">
                    <button>Submit</button>
                  </form>'''

    
    defPOST(self):
        data = web.input()
        return f"Received: {data.name}"

關(guān)鍵組件詳解

  1. 1. URL 路由系統(tǒng)
    urls = (
        '/path', 'ClassName',
        '/(.*)', 'CatchAll'  # 正則匹配
    )
  2. 2. 請(qǐng)求處理
    class MyHandler:
        def GET(self):
            # 獲取查詢參數(shù)
            input_data = web.input(id=None)
            
        def POST(self):
            # 獲取表單數(shù)據(jù)
            form_data = web.input()
  3. 3. 模板使用
    render = web.template.render('templates/')
    return render.my_template(name="John", age=30)
  4. 4. HTTP 工具
    # 重定向
    raise web.seeother('/new-url')

    # 設(shè)置 Cookie
    web.setcookie("user", "john")

部署生產(chǎn)環(huán)境

使用內(nèi)置 WSGI 服務(wù)器部署:

# app.py 底部添加
application = app.wsgifunc()

然后用 uWSGI/Gunicorn 運(yùn)行:

gunicorn app:application

適用場(chǎng)景

  • ? 快速原型開(kāi)發(fā)
  • ? 小型 REST API
  • ? 教學(xué)/學(xué)習(xí) Web 開(kāi)發(fā)
  • ? 微服務(wù)端點(diǎn)
  • ? 需要輕量級(jí)框架的項(xiàng)目

注意:對(duì)于大型復(fù)雜項(xiàng)目,建議使用 Django 或 Flask 等更全功能的框架。

最近在看官方微信公眾號(hào)開(kāi)發(fā)指南和chatgpt-on-wechat都是基于web.py進(jìn)行簡(jiǎn)單示例講解和開(kāi)發(fā)的,所以很有必要學(xué)習(xí)和記錄一下web.py模塊。 web.py 以其極簡(jiǎn)哲學(xué)著稱,核心代碼僅數(shù)千行,但提供了完整的 Web 開(kāi)發(fā)基礎(chǔ)功能,是理解 Web 框架設(shè)計(jì)的優(yōu)秀學(xué)習(xí)資源。


該文章在 2025/7/15 10:30:28 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

黄频国产免费高清视频,久久不卡精品中文字幕一区,激情五月天AV电影在线观看,欧美国产韩国日本一区二区
伊人亚洲免费看国产剧情 | 亚洲精品在线911 | 久久免费视频777 | 亚洲欧美国产精品一区 | 亚洲伊人成大香线蕉99综合 | 亚洲a级一片在线看 |