Python开发知识点包括:
- 基本数据类型
- 程序控制结构
- 组合数据类型
- 文件和数据格式化
- 数据计算
- python常用框架(django、flask)
- python常用函数库(urlib、pandas、jieba、wordcloud ) 等相关知识
Flask
- 面向需求简单,项目周期短的小应用
- Flask本身相当于一个内核,其他几乎所有的功能都要用到扩展,都需要用第三方的扩展来实现。用 extension 增加其他功能
- Werkzeug(路由模块)
- 路由处理:如何根据请求 URL 找到对应的视图函数
- request 和 response 封装: 提供更好的方式处理request和生成response对象
- 模板引擎则使用 Jinja2
什么是WSGI
-
WSGI(Python Web Server Gateway Interface)是Web服务器和Web应用程序或框架之间 提供的一种标准、简单、通用的接口
-
为了解决python web server 乱象
- Server/Gateway: 即是HTTP Server, 负责从客户端(Nnginx、apache、IIS)接收请求,将 request 转发给 application, 并将 application(可能是个Flask应用) 返回的response 返回给客户端
- Application/Framework: 一个python web 应用或 web 框架接收由 server 转发的request,处理请求,并将处理结果返回给 server
def application(environ, start_response):
...
application就是一个 WSGI app 一个可调用对象
参数 environ 一个包含WSGI环境信息的字典 例如路径信息 查询字符串
start_response 生成WSGI响应的回调函数 接受两个参数 status headers
## my_app.py
def myapp(environ, start_response):
status = "200 OK"
headers = [('Content-Type', 'text/html; charset=utf8')]
start_response(status, headers)
return [b'<h1> Hello World</h1>']
if __name__ == "__main__":
from wsgiref.simple_server import make_server
httpd = make_server("127.0.0.1", 8888, myapp)
httpd.serve_forever()
框架对比
Django Flask torado
Flask请求流
- 用户发送http请求 给web服务器
- web服务器通过Werkzeug 做URL的路由分发 将每个URL请求映射到对应的视图函数
- 路由是通过route装饰器实现
- 调用对应的视图函数 获取数据 然后通过渲染引擎响应 将数据传回给浏览器
Flask扩展包:
Flask-SQLalchemy:操作数据库 Flask-migrate:管理迁移数据库 Flask-Mail:邮件 Flask-WTF:表单 Flask-script:插入脚本 Flask-Login:认证用户状态 Flask-RESTful:开发REST API的工具 Flask-Bootstrap:集成前端Twitter Bootstrap框架 Flask-Moment:本地化日期和时间
Django
Django功能全面,它提供一站式解决方案,集成了MVT(Model-View-Template)和ORM,以及后台管理
- Django MTV 框架
- M(Model):创建数据模型,并执行数据库迁移
- T(Template):写出基本的 Django 模板,并从视图中传入数据
- V(View):在视图中访问数据库,实现业务逻辑,渲染模板,并接入路由表
大数据知识点包括:
- 大数据概述
- 数据仓库
- ETL
- DM
- Hadoop
- 数据结构
- 计算模式
- Spark
- Flink等相关知识
人工智能知识点包括
- 人工智能概述
- 知识图谱
- 决策树
- 神经网络
- 自然语言处理
- 感知
- 正则化
- 模型优化
- 卷积网络
- 线性因子
- 结构化概率模型
- 深度生成模型等相关知识