Python学习之路—2018/6/20

1.模板语法之变量

views.py

def index(request):import datetimes="gyq"l=[1,2,3]    dic={"name":"gyq","age":22}  date = datetime.date(1996, 5, 27)   # class Person(object):def __init__(self,name):self.name=nameperson_yuan=Person("gyq")  return render(request,"index.html",locals()) '''相当于 return render(request,"index.html{"l":l,"dic":dic,"date":date,"person_list":person_list})    '''

template

<h4>{{s}}</h4>
<h4>列表:{{ l.0 }}</h4>
<h4>字典:{{ dic.name }}</h4>
<h4>日期:{{ date.year }}</h4>
<h4>类对象列表:{{ person_list.0.name }}</h4>

2.模板语法之过滤器

default

如果一个变量是false或者为空,使用给定的默认值。否则,使用变量的值

>>> l = []
>>> <p>{{ l|default:"nothing" }}</p>

length

返回值的长度。

>>> dic = {"name": "gyq", "age": 22}
>>> <p>{{ dic|length }}</p>

filesizeformat

将值格式化为文件大小

>>> value = 123456
>>> <p>{{ value|filesizeformat }}</p>

date

将时间戳转化成自定义格式

>>> date = datetime.datetime.now()
>>> <p>{{ date|date:"Y-m-d" }}</p>

slice

切片

>>> s = "gyq1314"
>>> <p>{{ s|slice:"0:3" }}</p>

truncatechars

如果字符串字符多于指定的字符数量,那么会被截断。截断的字符串将以可翻译的省略号序列(“...”)结尾。

>>> content = "上世纪90年代末,在IT公司任职的张长弓凭借出色的专业能力在互联网商业领域初尝成功滋味。"
>>> <p>{{ content|truncatechars:10 }}</p>

safe

当被渲染的含有标签时,Django会自动转义,这时需要使用safe过滤器

>>> a = "<a href='#'>click</a>"
>>> <p>{{ a|safe }}</p>

3.模板语法之标签

for标签

遍历每一个元素

{% for person in person_list %}<p>{{ person.name }}</p>
{% endfor %}
{% for person in person_list %}<p>{{ person.name },{ person.age }}</p>
{% endfor %}

遍历字典

{% for key,val in dic.items %}<p>{{ key }}:{{ val }}</p>
{% endfor %}

循环序号

{% for key,val in dic.items %}<p>{{ forloop.counter }}{{ key }}:{{ val }}</p>
{% endfor %}
forloop.counter            序号从1开始
forloop.counter0           序号从0开始
forloop.revcounter         反向循环,序号从1开始
forloop.revcounter0        反向循环,序号从0开始
forloop.first              如果当前是第一次循环则返回True
forloop.last               如果当前是最后一次循环则返回True

for...empty标签

在给出的组是空的或者没有被找到时,进行的操作

{% for person in person_list %}<p>{{ person.name }}</p>
{% empty %}<p>nothing</p>
{% endfor %}

### if标签

{% if a > 100 or a < 0 %}<p>错误</p>
{% elif a > 90 and a < 100 %}<p>优秀</p>
{% elif a > 80 and a < 90 %}<p>良好</p>
{% elif a > 70 and a < 80 %}<p>中等</p>
{% elif a > 60 and a < 70 %}<p>及格</p>
{% else %}<p>不及格</p>
{% endif %}

with标签

当变量名字较为复杂时,使用此标签缓存一个简单的名字

{% with person_list.1.name as name %}{{ name }}
{% endwith %}

转载于:https://www.cnblogs.com/ExBurner/p/9206410.html

Python学习之路—2018/6/20相关推荐

  1. Python学习之路—2018/7/14

    Python学习之路-2018/7/12 3.功能开发 3.3 设计博客首页 博客首页中最重要的就是中间的文章区域,所以我首先把文章区域设计出来,一开始并没有数据,如果用orm添加或者直接在数据库添加 ...

  2. Python学习之路—2018/6/27

    Python学习之路-2018/6/27 1.多表操作 添加记录 添加多对多关系 方式一:传入Author对象 book = Book.objects.get(bid=1) gy = Author.o ...

  3. 2018python培训-Python学习之路—2018/7/2

    Hello World Ajax +=提交 用户名 密码 提交

  4. Python学习之路9☞面向对象的程序设计

    Python学习之路9☞面向对象的程序设计 一 面向对象的程序设计的由来 见概述:http://www.cnblogs.com/linhaifeng/articles/6428835.html 二 什 ...

  5. Python学习之路5☞文件处理

    Python学习之路5☞文件处理 一.文件处理流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 1 正趣果上果 2 Interesting fruit fruit 3 4 ...

  6. Python学习之路【第一篇】-Python简介和基础入门

    1.Python简介 1.1 Python是什么 相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一.从性质上来讲它和我们熟知的C.java.php等没有什么本质的区别,也是 ...

  7. python之路 mysql 博客园_教为学:Python学习之路(二):MySQLdb的几种安装方式,以及用Python测试连接MySql...

    教为学:Python学习之路(二):MySQLdb的几种安装方式,以及用Python测试连接MySql Easy_install安装MySQLdb 很简单,以至于我不晓得该怎么说.一句话. sodu ...

  8. python 学习之路开始了

    python 学习之路开始了.....记录点点滴滴.... 转载于:https://www.cnblogs.com/chobit/p/6163287.html

  9. python学习之路0x00

    Python学习之路0x00 在学习python之前,要知道什么是python? python是一种跨平台的计算机程序设计语言.是一种面向对象的动态类型语言,与c语言不同, c语言要编译后才能执行.而 ...

最新文章

  1. css的三种定位方式使用探讨
  2. 学习记录(电子信息专业)
  3. NanoHttpd源码分析
  4. linux 日志报告生成器,linux实战(一)----日志的截取-----文本过滤器grep、文本流式编辑器sed、报表生成器awk的运用...
  5. zstack 第一个例子
  6. PGM学习之二 PGM模型的分类与简介
  7. collector_使用Data Collector进行SQL Server性能监视–第3部分–阅读报告
  8. ASP.NET的ASHX一般处理程序中Session为null且不能赋值
  9. mysql能将查询结果与表左查询,MySQL查询与结构
  10. 冒险岛java_079src 冒险岛079服务端源码,解压出来 直接导入到java改成即可 Develop 243万源代码下载- www.pudn.com...
  11. 中小学python编程教学-小学信息技术教学中进行Python 编程语言教学的策略
  12. C# 实现的几种在线翻译
  13. 再谈微服务负载均衡器:Ribbon均衡器和SpringCloud自带LoadBalancer均衡器
  14. 找到组织了---perftest工作室 TIB工作室
  15. 计步器算法简述和模块使用
  16. 计算机wps系统的造字程序在哪里,Windows10系统自带造字程序在哪
  17. openssl version mismatch. built against 30000010, you have 30100000
  18. 信息安全相关从业人员必须收藏,100%有用!
  19. 与5000多名员工谈话之后,Google发现了远程工作的9条秘诀
  20. 移动设备与操作系统多样性将扩大网络犯罪空间

热门文章

  1. JS控制HTML元素的显示和隐藏
  2. Python3.0 我的DailyReport 脚本(一) 使用COM操作Excel
  3. 一文看懂深度学习与计算机视觉
  4. 在Android Studio上进行OpenCV 3.1开发
  5. YCbCr与YUV的区别
  6. Fast RCNN 训练自己数据集 (2修改数据读取接口)
  7. 使用opencv作物件识别(一) —— 积分直方图加速HOG特征计算
  8. 基于统计概率和机器学习的文本分类技术
  9. ML 05、分类、标注与回归
  10. boost learn notes