<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[ioooooooooi的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/ioooooooooi</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; ioooooooooi]]></copyright><item><title><![CDATA[Flask常用扩展包]]></title><link>https://blog.youkuaiyun.com/ioooooooooi/article/details/80609829</link><guid>https://blog.youkuaiyun.com/ioooooooooi/article/details/80609829</guid><author>ioooooooooi</author><pubDate>Thu, 07 Jun 2018 15:17:04 +0800</pubDate><description><![CDATA[Flask-SQLalchemy：操作数据库；Flask-script：插入脚本；Flask-migrate：管理迁移数据库；Flask-Session：Session存储方式指定；Flask-WTF：表单；Flask-Mail：邮件；Flask-Bable：提供国际化和本地化支持，翻译；Flask-Login：认证用户状态；Flask-OpenID：认证；Flask-RESTful：开发REST...]]></description><category></category></item><item><title><![CDATA[通过两个小实例来进一步理解装饰器的作用]]></title><link>https://blog.youkuaiyun.com/ioooooooooi/article/details/80024064</link><guid>https://blog.youkuaiyun.com/ioooooooooi/article/details/80024064</guid><author>ioooooooooi</author><pubDate>Fri, 20 Apr 2018 21:19:46 +0800</pubDate><description><![CDATA[装饰器是什么:闭包加@xxx装饰器的作用:在不改变原先的函数值跟调用的方式,添加额外的功能装饰器的代码:	def set_fun(func):		def call_fun(*args,**kwargs):			return func(*args,**kwargs)		return call_fun		@set_fun		def test():		pass两个小例子1、计算某函数的执行次数,用户行为...]]></description><category></category></item></channel></rss>