Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Python 100 Days | 138,537 | a month ago | 689 | Python | ||||||
Python - 100天从新手到大师 | ||||||||||
Django Rest Framework | 26,338 | 24,595 | 1,796 | 6 days ago | 134 | September 22, 2022 | 139 | other | Python | |
Web APIs for Django. 🎸 | ||||||||||
Awesome Django | 7,453 | 16 days ago | 3 | cc0-1.0 | HTML | |||||
A curated list of awesome things related to Django | ||||||||||
Drf Yasg | 3,165 | 290 | 91 | 17 days ago | 62 | July 20, 2023 | 242 | other | Python | |
Automated generation of real Swagger/OpenAPI 2.0 schemas from Django REST Framework code. | ||||||||||
Django Rest Swagger | 2,516 | 2,031 | 43 | 3 years ago | 50 | December 15, 2021 | 168 | bsd-2-clause | Python | |
Swagger Documentation Generator for Django REST Framework: deprecated | ||||||||||
Django Rest Auth | 2,331 | 1,109 | 25 | a year ago | 25 | April 01, 2019 | 234 | mit | Python | |
This app makes it extremely easy to build Django powered SPA's (Single Page App) or Mobile apps exposing all registration and authentication related functionality as CBV's (Class Base View) and REST (JSON) | ||||||||||
Djoser | 2,319 | 212 | 6 | 2 months ago | 50 | October 30, 2020 | 170 | mit | Python | |
REST implementation of Django authentication system. | ||||||||||
Drf Nested Routers | 1,523 | 621 | 35 | 20 days ago | 19 | October 15, 2021 | 49 | apache-2.0 | Python | |
Nested Routers for Django Rest Framework | ||||||||||
Cookiecutter Django Rest | 1,431 | 5 days ago | 5 | mit | Python | |||||
Build best practiced apis fast with Python3 | ||||||||||
Drf Extensions | 1,371 | 323 | 19 | 4 months ago | 16 | July 30, 2021 | 75 | mit | Python | |
DRF-extensions is a collection of custom extensions for Django REST Framework |
作者:骆昊
说明:从项目上线到获得8w+星标以来,一直收到反馈说基础部分(前15天的内容)对新手来说是比较困难的,建议有配套视频进行讲解。最近把基础部分的内容重新制作了一个名为“Python-Core-50-Courses”的项目,用更为简单通俗的方式重写了这部分内容并附带了视频讲解,初学者可以关注下这个新项目。如果需要Python基础视频,可以在“B站”搜索《Python零基础快速上手》,这套视频是我讲课的时候录制的随堂视频,画质尚可、音质一般,但是对初学者应该会有些帮助,欢迎大家留言、评论、发弹幕。学习之后觉得有收获的小伙伴可以“一键三连”来支持UP主(千锋Python)。国内用户如果访问GitHub比较慢的话,可以关注我的知乎号Python-Jack,上面的“从零开始学Python”专栏比较适合初学者,其他的专栏也在持续创作和更新中,欢迎大家关注并点赞评论。
创作不易,感谢大家的打赏支持,这些钱不会用于个人消费(例如:购买咖啡),而是通过腾讯公益、美团公益、水滴筹等平台捐赠给需要帮助的人(点击了解捐赠情况)。需要加入QQ学习群的可以扫描下面的二维码,三个群加一个即可,不要重复进群。学习群会为大家提供学习资源和问题解答,如果有Python体验课和行业公开课会提前在群里通知大家,欢迎大家加入。
项目“Day80~90”部分目前仍在创作中,因为作者平时也挤不出太多时间来写文档,因此更新的速度比较缓慢,感谢大家的理解。
简单的说,Python是一个“优雅”、“明确”、“简单”的编程语言。
Python在以下领域都有用武之地。
作为一名Python开发者,根据个人的喜好和职业规划,可以选择的就业领域也非常多。
说明:目前,数据分析和数据挖掘是非常热门的方向,因为不管是互联网行业还是传统行业都已经积累了大量的数据,各行各业都需要数据分析师从已有的数据中发现更多的商业价值,从而为企业的决策提供数据的支撑,这就是所谓的数据驱动决策。
给初学者的几个建议:
print
函数 / 运行程序input
函数 / 检查变量类型 / 类型转换if
/ if
-else
结构 / if
-elif
-else
结构 / 嵌套的if
break
语句 / continue
语句range
类型 / 循环中的分支结构 / 嵌套的循环 / 提前结束程序def
关键字 / 函数名 / 参数列表 / return
语句 / 调用自定义函数range
创建数字列表 / 生成表达式 / 生成器keys
方法 / values
方法 / items
方法 / setdefault
方法__str__
方法__slots__
__add__
/ __sub__
/ __or__
/__getitem__
/ __setitem__
/ __len__
/ __repr__
/ __gt__
/ __lt__
/ __le__
/ __ge__
/ __eq__
/ __ne__
/ __contains__
tkinter
开发GUI程序pygame
三方库开发游戏应用try
-except
代码块 / else
代码块 / finally
代码块 / 内置异常类型 / 异常栈 / raise
语句csv
模块的应用 / JSON数据格式 / json
模块的应用in
和not in
运算符 / is_xxx
方法 / join
和split
方法 / strip
相关方法 / pyperclip
模块 / 不变字符串和可变字符串 / StringIO
的使用re
模块实现正则表达式操作(匹配、搜索、替换、捕获)re
模块 / compile
函数 / group
和groups
方法 / match
方法 / search
方法 / findall
和finditer
方法 / sub
和subn
方法 / split
方法fork
函数 / multiprocessing
模块 / 进程池 / 进程间通信threading
模块 / Thread
类 / RLock
类 / Condition
类 / 线程池requests
三方库 / 解析JSON格式数据socket
模块 / socket
函数 / 创建TCP服务器 / 创建TCP客户端 / 创建UDP服务器 / 创建UDP客户端smtplib
模块 / poplib
模块 / imaplib
模块xlrd
/ xlwt
/ openpyxl
async
和awai
tcreate
/ drop
/ alter
insert
/ delete
/ update
select
grant
/ revoke
HttpResponse
修改响应头StreamingHttpResponse
处理大文件xlwt
生成Excel报表reportlab
生成PDF报表网站优化第一定律
在Django项目中使用Redis提供缓存服务
在视图函数中读写缓存
使用装饰器实现页面缓存
为数据接口提供缓存服务
requests
三方库实现数据抓取软件过程模型
经典过程模型(瀑布模型)
瀑布模型最大的缺点是无法拥抱需求变化,整套流程结束后才能看到产品,团队士气低落。
敏捷开发(Scrum)- 产品所有者、Scrum Master、研发人员 - Sprint
补充:敏捷软件开发宣言
- 个体和互动 高于 流程和工具
- 工作的软件 高于 详尽的文档
- 客户合作 高于 合同谈判
- 响应变化 高于 遵循计划
角色:产品所有者(决定做什么,能对需求拍板的人)、团队负责人(解决各种问题,专注如何更好的工作,屏蔽外部对开发团队的影响)、开发团队(项目执行人员,具体指开发人员和测试人员)。
准备工作:商业案例和资金、合同、憧憬、初始产品需求、初始发布计划、入股、组建团队。
敏捷团队通常人数为8-10人。
工作量估算:将开发任务量化,包括原型、Logo设计、UI设计、前端开发等,尽量把每个工作分解到最小任务量,最小任务量标准为工作时间不能超过两天,然后估算总体项目时间。把每个任务都贴在看板上面,看板上分三部分:to do(待完成)、in progress(进行中)和done(已完成)。
项目团队组建
团队的构成和角色
说明:谢谢付祥英女士帮助我绘制了下面这张精美的公司组织架构图。
编程规范和代码审查(flake8
、pylint
)
Python中的一些“惯例”(请参考《Python惯例-如何编写Pythonic的代码》)
影响代码可读性的原因:
团队开发工具介绍
请参考《团队项目开发的问题和解决方案》。
选题范围设定
CMS(用户端):新闻聚合网站、问答/分享社区、影评/书评网站等。
MIS(用户端+管理端):KMS、KPI考核系统、HRS、CRM系统、供应链系统、仓储管理系统等。
App后台(管理端+数据接口):二手交易类、报刊杂志类、小众电商类、新闻资讯类、旅游类、社交类、阅读类等。
其他类型:自身行业背景和工作经验、业务容易理解和把控。
需求理解、模块划分和任务分配
制定项目进度表(每日更新)
模块 | 功能 | 人员 | 状态 | 完成 | 工时 | 计划开始 | 实际开始 | 计划结束 | 实际结束 | 备注 |
---|---|---|---|---|---|---|---|---|---|---|
评论 | 添加评论 | 王大锤 | 正在进行 | 50% | 4 | 2018/8/7 | 2018/8/7 | |||
删除评论 | 王大锤 | 等待 | 0% | 2 | 2018/8/7 | 2018/8/7 | ||||
查看评论 | 白元芳 | 正在进行 | 20% | 4 | 2018/8/7 | 2018/8/7 | 需要进行代码审查 | |||
评论投票 | 白元芳 | 等待 | 0% | 4 | 2018/8/8 | 2018/8/8 |
OOAD和数据库设计
UML(统一建模语言)的类图
通过模型创建表(正向工程),例如在Django项目中可以通过下面的命令创建二维表。
python manage.py makemigrations app
python manage.py migrate
使用PowerDesigner绘制物理模型图。
通过数据表创建模型(反向工程),例如在Django项目中可以通过下面的命令生成模型。
python manage.py inspectdb > app/models.py
unittest
、pytest
、nose2
、tox
、ddt
、……)coverage
)