分类 Python 中的文章

Flask中Jinja2模板引擎详解(四)–测试器

Jinja2中的测试器Test和过滤器非常相似,区别是测试器总是返回一个布尔值,它可以用来测试一个变量或者表达式,你需要使用”is”关键字来进行测试。测试器一般都是跟着if控制语句一起使用的。下面我们就来深入了解下这个测试器。 系列文……

阅读全文

Flask中Jinja2模板引擎详解(三)–过滤器

我所了解的模板引擎大部分都会提供类似Jinja2过滤器的功能,只不过叫法不同罢了。比如PHP Smarty中的Modifiers(变量调节器或修饰器),FreeMarker中的Build-ins(内建函数),连AngularJS这样的前端框架也提供了Filt……

阅读全文

Flask中Jinja2模板引擎详解(二)–上下文环境

Flask每个请求都有生命周期,在生命周期内请求有其上下文环境Request Context。我们在Flask进阶系列第一篇中有详细介绍。作为在请求中渲染的模板,自然也在请求的生命周期内,所以Flask应用中的模板可以使用到请求上下文中的环境变量,及一些辅助……

阅读全文

Python通过ctypes调用C程序实例

在做复杂计算时,Python的执行效率是无法同C比的。而且有些算法已经有开源的C库了,我们也没必要用Python重写一份。那Python怎么调用C语言写的程序库呢?答案就在Python提供的ctypes库,它提供同C语言兼容的数据类型,可以很方便地调用C语……

阅读全文

Flask中Jinja2模板引擎详解(一)–控制语句和表达式

让我们开启Jinja2模板引擎之旅,虽说标题是Flask中的Jinja2,其实介绍的主要是Jinja2本身,Flask是用来做例子的。如果对Flask不熟悉的朋友们建议将本博客的入门系列先看下。怎么,不知道什么是模板引擎?你可以将模板比作MVC模式中的Vi……

阅读全文

Flask进阶系列(三)–Jinja2模板引擎

其实我们在入门系列第三篇中已经介绍了模板,包括如何渲染模板,表达式和控制语句,模板继承,还有HTML转义。我们也知道了Flask模板是基于Jinja2实现的。其实Jinja2的模板功能远不止这些,想了想,还是决定在进阶系列中,更深入地介绍Jinja2模板引……

阅读全文

Flask进阶系列(二)–信号

信号(Signal)就是两个独立的模块用来传递消息的方式,它有一个消息的发送者Sender,还有一个消息的订阅者Subscriber。信号的存在使得模块之间可以摆脱互相调用的模式,也就是解耦合。发送者无需知道谁会接收消息,接收者也可自由选择订阅何种消息。这……

阅读全文

Flask进阶系列(一)–上下文环境

Flask目前最新的版本是0.10.1,在其版本更新过程中,Flask也在不断增加新的、炫酷的功能。我们在入门系列中介绍一些的基本功能,现在让我们开始更深入地了解Flask。 系列文章 Flask进阶系列(一)-上下文环境 Flask进阶系列(二)-信号 Flas……

阅读全文

Python中的装饰器介绍

装饰器模式Decorator可以动态的扩充一个类或者函数的功能,实现的方法一般是在原有的类或者函数上包裹一层修饰类或修饰函数。在Python语言中,其提供了语法糖,让装饰器使用起来更简便,不过同时也增加了初学者理解这个装饰器背后原理的难度。这里,我们就来剖……

阅读全文

Flask扩展系列(一)–Restful

看过入门系列的朋友们一定已经被Flask的简洁之美感染到了吧。其实Flask不仅是一个Python Web框架,更是一个开源的生态圈。在基础框架之外,Flask拥有丰富的扩展(Extension)来其扩充功能,这些扩展有的来自官方,有的来自第三方。这一系列会……

阅读全文