python 宏使用详解
什么是宏?
宏類似python中的函數(shù),可以傳參數(shù)進去,但不能有返回值!在實際開發(fā)項目中,可以將一些復(fù)用代碼抽取出來放到宏中,然后把不固定的值作為變量!
宏的使用!
在講宏使用之前,我們先網(wǎng)上找一張表單注冊的圖片,圖片如下:
然后我們通過模板渲染的方式來實現(xiàn)這個表單!
新建一個test.py文件,代碼如下(相信很多朋友都記得滾瓜爛熟了!):
from flask import Flask,render_templateapp = Flask(__name__)@app.route("/") def index():return render_template("test.html")if __name__ == "__main__":app.run(debug=True)再在templates文件下新建一個test.html文件,代碼如下:
<!DOCTYPE html> <html lang="en"> <head><meta charset="UTF-8"><title>用戶注冊</title> </head> <body><form action="#" method="post"><table><tr><td>用戶名</td><td><input type="text" name="name" value=""></td></tr><tr><td>密碼</td><td><input type="password" name="password1" value=""></td></tr><tr><td>確認密碼</td><td><input type="password" name="password2" value=""></td></tr><tr><td>E-Mail:</td><td><input type="text" name="email" value=""></td></tr><tr><td>手機號碼</td><td><input type="text" name="m-phone" value=""></td></tr><tr><td>固定電話</td><td><input type="text" name="tel" value=""></td></tr><tr><td>家庭住址</td><td><input type="text" name="address" value=""></td></tr><tr><td><input type="submit" name="name" value="注冊"></td><td><input type="submit" name="name" value="登錄"></td></tr></table></form> </body> </html>運行test.py文件,結(jié)果如下:
相信對很多朋友來說,實現(xiàn)這個表單并不是什么難事!
上述代碼雖然實現(xiàn)了表單注冊這個界面!但是代碼太復(fù)雜了,每次都得去input一下,太麻煩了!!是吧??
下面我們就用宏來實現(xiàn)這個效果!
首先,我們分析test.html文件表單的共性,是不是都有一個input標簽啊!是不是??
OK,下面我們就把這段代碼抽取出來放到宏中,代碼如下:
{#{% macro %}{% endmarco %}定義宏的標準語法,起始跟結(jié)束標簽 #} {#macro后面的input為宏的名字,括號中的值為宏的參數(shù),例如:type="text"表示默認文本類型為text #} {% macro input(name,type="text",value="") %} {#將input宏后面的name,type,value參數(shù)作為變量傳入name,type,value值中 #}<input name="{{ name }}" type="{{ type }}" value="{{ value }}"> {% endmacro %}宏定義好了,我們在test.html文件中把之前寫的form表單代碼刪除掉。再輸入下方代碼:
<form action="#"><table><tr><td>姓名:</td><td>{{ input("username") }}</td></tr><tr><td>密碼:</td><td>{{ input("password1",type="password") }}</td></tr><tr><td>確認密碼:</td><td>{{ input("password2",type="password") }}</td></tr><tr><td>E-Mail:</td><td>{{ input("email") }}</td></tr><tr><td>手機號碼:</td><td>{{ input("phone") }}</td></tr><tr><td>固定電話:</td><td>{{ input("tel") }}</td></tr><tr><td>地址:</td><td>{{ input("address") }}</td></tr><tr><td>{{ input("zuce",type="submit",value="注冊") }}</td><td>{{ input("denglu",type="submit",value="登錄") }}</td></tr></table></form>代碼是不是比之前簡潔多了,看著也舒服。
說了那么多,還不知道運行結(jié)果咋樣,我們運行試試!結(jié)果如下:
在實際開發(fā)項目中,宏用的地方還是挺多的,希望朋友們能夠?qū)W會它,只有學(xué)會它,我們在開發(fā)項目中才能得心應(yīng)手!
?
總結(jié)
以上是生活随笔為你收集整理的python 宏使用详解的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 基于最小二乘法的无线定位
- 下一篇: python画图加注释_【IT专家】py