Pyhton程序设计:Python之web模板
小职 2017-08-11 来源 :网络 阅读 711 评论 0

摘要:本篇Pyhton程序设计教程将为大家讲解Pyhton编程的知识点,看完这篇文章会让你对Python编程的知识点有更加清晰的理解和运用。

    本篇Pyhton程序设计教程将为大家讲解Pyhton编程的知识点,看完这篇文章会让你对Python编程的知识点有更加清晰的理解和运用。

 

   Python的web模板,其实就是在HTML文档中使用控制语句和表达语句替换HTML文档中的变量来控制HTML的显示格式,Python的web模板可以更加灵活和方便的控制HTML的显示,而且大大地减少了编程人员的工作量。

  模板语法:

  1、控制语句{% ... %}:控制语句需要用{% end %}来作为此语句结束标志,通常用来作循环控制、条件控制、模块控制等,可以更加方便的控制HTML内容的显示;

  2、表达语句{{ ... }}:一条表达语句就相当于一条Python语句,不需要结束语句,{{和}}之间可以放入任何Python表达式,Python模板语法可以自动运行{{和}}中的语句并把运行结果显示在HTML模板中;

  3、母板继承:在母板中使用{% block block_name %}{% end %}进行模块的占位,block_name可以自己定义,其他的都是固定的语法格式;在子模板中使用{% extends  "xxx.html" %}表示此HTML模板继承自“xxx.html”模板(母板),然后在子模板中使用{% block block_name %} ... {% end %}重新定义母板中占位的模块,子模板中定义模块内容就会显示在母板中占位的位置,不同的子模板中可以定义不同的模块内容来满足自身的需要;

  4、模板导入:在一个HTML模板中使用{% include "xxx.html" %},就会将xxx.html的内容导入(嵌入)当前HTML模板中,一般会将一些公共内容写在一个模板中,然后导入到需要使用的模板中,以达到代码重用的效果,使模板编码更加简洁方便;

  5、模板函数:

    1)static_url("static_file_path"):导入静态文件,参数为静态文件的路径全名,例如<link href="{{ static_url("xxx.css") }}" rel="stylesheet" />,如果设置了静态文件路径(比如tornado.web.Application中参数settings的选项static_path),则该参数为设置的静态文件路径下的相对路径;

    2)escape(string):将string中的$、<和>转换成对应的HTML字符串;

    3)更新中...

下面是用tornado写的一个非常简单的web模板应用:

#!/usr/bin/env python

# -*- coding: utf-8 -*-

import tornado.web

import tornado.ioloop

 

from tornado.options import define, options

 

define('port', default=8888, help='run on give the give port', type=int)

 

 

# 用于处理网页的请求

class MainHandler(tornado.web.RequestHandler):

    def get(self, *args, **kwargs):

        personinfodict = {

            'name': 'Jason',

            'age': 20,

            'gender': 'male',

        }

        itemlist = ['name', 'age', 'gender']

        # 将变量以参数的形式传入HTML模板中

        self.render('personinfo.html', itemlist=itemlist, personinfodict=personinfodict, welcome='hello guy!')

 

 

# 设置不同路由的网页对应的处理类

app = tornado.web.Application([

    (r'/', MainHandler)

])

 

# 开始主程序I/O循环

if __name__ == '__main__':

    app.listen(options.port)

tornado.ioloop.IOLoop.instance().start()

 

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <!-- 使用表达语句输出变量的值 -->

    <title>{{ welcome }}</title>

</head>

<body>

    <ul><!-- 使用控制语句控制HTML内容的输出,也减少了许多工作量 -->

    {% for item in itemlist %}

        <li>{{ item }}: {{ personinfodict[item] }}</li>

    {% end %}

    </ul>

</body>

</html>

 

     本篇Pyhton教程将为大家讲解Pyhton编程的知识点,看完这篇文章会让你对Python编程的知识点有更加清晰的理解和运用。

本文由 @小职 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程