如何使用python开发一个api
谢邀,去年春节期间,没事报了一个python web开发的网络课程,根据自己的学习情况来回答一下。一个页面的开发,应该是分前端和后端的。关于后端在python中有两个最常见的开发框架:Django,flask。Django大而全,什么功能模块都已经封装好了,调用即可;flask小而精,没有很高的封装,但是有许多功能模块,需要我们自己去集成。
当初学习的那个网络课程是用flask框架来做的,上手很简单:当初学习的时候能写一个小的网站,本来想转行做python后端开发的,但是后来还是接着做数据挖掘了,许久不用,倒是有点生疏了。总得来说,有几大模块:路由route() 装饰器把一个函数绑定到对应的 URL 上,Flask 的 URL 规则基于 Werkzeug 的路由模块。
这个模块背后的思想是基于 Apache 以及更早的 HTTP 服务器主张的先例,保证优雅且唯一的 URL。模板渲染 Jinja2用 Python 生成 HTML 十分无趣,而且相当繁琐,因为你必须手动对 HTML 做转义来保证应用的安全。为此,Flask 配备了 Jinja2 模板引擎。
当然你也可以使用其他的模板引擎,但是建议你还是使用jinja2模板请求对象request你可以使用全局 request 对象访问进入的请求数据。 Flask 处理进入的请求数据并允许你用这个全局对象访问它。如果你工作在多线程环境,Flask 内部保证你总会在当前线程上获取正确的数据。
数据库交互-Flask-SQLAlchemy 通过sqlalchemy对数据库增删改查,使用的是orm模式,不需要写SQL语句。在数据库中,一个表就是一个python类,一个类的实例就是表中的行。在开发过程中,会用到一些python的高级应用:装饰器:在权限验证的时候很需要用到模块的导入:防止循环导入图像处理:验证码生成property使用:密码加密时使用关于前端如果对前端不熟,想做一个小网站练练手,推荐你使用Bootstrap里面有各种的CSS样式,各种组件,JS插件,还有一些网站实例供你参考,对前端HTML,CSS 不是很熟悉的,可以通过这略微修改快速搭建一个前端页面。
后记:将来的数据挖掘工作者可能也需要懂网站后端开发,因为以后建模不会一直都是在单机中,可能会集成到网站中,实时数据流入模型,结果展示在网站上。
如何学习Python Web开发?需要先学习哪些基础知识呢
第一:python的基础语法
python的基础语法必须要会,本人学的django框架,学完后觉得面向对象的知识一定要牢固撑握,不然到学web框架时你会觉得吃力,分不清对象,实例,元类,等等一系列概念。为了后期学习框架更加容易,面向对象的知识请务必掌握。别外更高级的技术的语,需要题者在学习框架后再相应的学习python的一些高级知识。
第二:web开发框架
python主流的有两个,建议学习django,至于题者到底要学哪个建议自己思考对比自己的需求和能力再决定。不要对比两个框架谁更好,这是不科学的。只有适不适合,没有准更好。
第三:数据库知识
这个只要了解一些mysql.或者sql就行。这样在学习框架时会感觉更轻车熟路。
第四:网络知识
什么http啥的,至少你要了解一些。
第五:前端知识
个人感觉html要认真的学习一下,要知道各种标签的含义和参数的用处。因为在开发中会需要将一些python框架的语句写到html文件中,另外像django的表单,模板继承等知识如果你一点也不会html的话你会感觉不太容易明白。
要知道光学后端是开发不出飘亮的网站的。如果题者是独立要开发网站,那么css.js也是要学的,如果对前端页面要求不高,或有团队的话。css,js了解一些基本的就行。到学习的后期会用到更高级的知识到那时,题者应该相应的对网给和js的知识进行扩充,以便深入学习web框架。