11.18 flask!何方神圣

flask是何方神圣?

flask!何方神圣

Flask是一个轻量级的可定制框架,使用Python语言编写,较其他同类型框架更为灵活、轻便、安全且容易上手。它可以很好地结合MVC模式进行开发,开发人员分工合作,小型团队在短时间内就可以完成功能丰富的中小型网站或Web服务的实现。另外,Flask还有很强的定制性,用户可以根据自己的需求来添加相应的功能,在保持核心功能简单的同时实现功能的丰富与扩展,其强大的插件库可以让用户实现个性化的网站定制,开发出功能强大的网站。

环境搭建

  • python的安装

python语言现在是炙手可热的,曾经大学时代的我,总有一个软件开发的梦想,那就是要学一门最强大的,啥都能够干的语言,从这个层面而言,python那就是我心中的女神。Python 是一种代表简单主义思想的语言。阅读一个良好的 Python 程序就感觉像是在读英语一样,尽管这个英语的要求非常严格!Python 的这种伪代码本质是它最大的优点之一。它使你能够专注于解决问题而不是去搞明白语言本身。同时,关键是它及其强大, 拥有庞大的标准库。它可以帮助你处理各种工作,反正就是万金油一枚。记住,只要安装了 Python,就可以上天入地,比如屌丝的我,一个很low的用法,把python当计算器用,高大上的么,现在的AI里面,python也是台柱子一根。

python秉承的是简单主义,那么安装也是及其简单的,下载了安装包以后,就如同一般的软件一般直接setup就行了,需要注意的是,最好将安装路径加载到系统搜索路径中,其二是尤其是要注意python的版本,2.×和3.×的版本还是有不小的差异的,不过现在最新的是3.7,经典的2.×版本是2.6和2.7。看实际的需要吧,主要是取决于python的库的版本支持。

  • flask的安装

类似于java中的jar包,flask也是python扩展库中的一种,那么在安装了python之后,配置了pip工具后,即可通过pip flask完成flask的安装。那么要问我pip是什么,解释一下,pip 是 Python 包管理工具,该工具提供了对Python 包的查找、下载、安装、卸载的功能。Python 2.7.9 + 或 Python 3.4+ 以上版本都自带 pip 工具,在执行了pip flask后,如果判断flask是否安装成功了呢?可以通过 pip show flask来查看:

flask!何方神圣

flask下的微服务架构

既然flask是使用Python语言编写,下面我们还是用hollo world来欢迎大家来到flask的神奇世界:

第一步:引用模块

import flask

类似于java中的import,这里的含义一样,就是将我们前文中安装的flask进行导入。

第二步:创建flask实例

app = Flask(__name__)

创建一个应用app对象,python是动态语言,变量只要依据先申明后使用的原则即可,那么其中比较晦涩的是__name__,这是在其他语言中看不到的,那么__name__代表什么呢?其实__name__就是标识模块的名字的一个系统变量。这里分两种情况:假如当前模块是主模块(也就是调用其他模块的模块),那么此模块名字就是__main__;假如此模块是被import的,则此模块名字为文件名字。这里创建了一个Flask的实例app,它接收包或者模块的名字作为参数,但一般都是传递__name__。

第三步:配置路由

@app.route("/hello") 
def hello():
return "Hello World!"
if __name__ == "__main__":
app.run()

是不是很眼熟,和java中的Annotation很类似,到这里估计有点spring mvc基础的童鞋一看就明白了,上下文是hello的就执行函数hello(),网页输出就是"Hello world!"。对!这就是一个最简单的flash应用,是不是很快,那个号称“黄色闪光”火影四代目波风水门,也快不过如此吧!老板,就是凶恶的尾兽,今天我就可以搞定你。

第四步:运行

python hello_flask.py

看看效果,打开浏览器,访问http://localhost/hello,是不是看到了Hello world!对了执行到这里,你就入门了,师傅我已经把你领进门了,后面就看你自己的了。呵呵

尾声

看不到效果,开玩笑,2/8法则,80%的问题都是20%的原因造成的,端口被占用了,很简单,改变应用的服务端口,将

app.run() 改为 app.run(port=8080) 即可。

总结

对java了解的开发者可能会发现这里基本和spring的requestmapping几乎如出一辙,至少在restapi的实现上有相似之处。设定和实现起来非常地方便,这就是flask用于web开发入门的简单之处。


分享到:


相關文章: