{eval=Array;=+count(Array);}

问答专栏Q & A COLUMN

想学习python做后端,有人推荐django有人推荐flask,二者有啥区别呢?

CoffeXCoffeX 回答10 收藏1
收藏问题

10条回答

awokezhou

awokezhou

回答于2022-06-22 19:46


Flask

  1. Flask确实很“轻”,不愧是Micro Framework,从Django转向Flask的开发者一定会如此感慨,除非二者均为深入使用过

  2. Flask自由、灵活,可扩展性强,第三方库的选择面广,开发时可以结合自己最喜欢用的轮子,也能结合最流行最强大的Python库
  3. 入门简单,即便没有多少web开发经验,也能很快做出网站
  4. 非常适用于小型网站
  5. 非常适用于开发web服务的API
  6. 开发大型网站无压力,但代码架构需要自己设计,开发成本取决于开发者的能力和经验各方面性能均等于或优于Django
  7. Django自带的或第三方的好评如潮的功能,Flask上总会找到与之类似第三方库
  8. Flask灵活开发,Python高手基本都会喜欢Flask,但对Django却可能褒贬不一
  9. Flask与关系型数据库的配合使用不弱于Django,而其与NoSQL数据库的配合远远优于Django
  10. Flask比Django更加Pythonic,与Python的philosophy更加吻合


Django

  1. jango太重了,除了web框架,自带ORM和模板引擎,灵活和自由度不够高

  2. Django能开发小应用,但总会有“杀鸡焉用牛刀”的感觉
  3. Django的自带ORM非常优秀,综合评价略高于SQLAlchemy
  4. Django自带的模板引擎简单好用,但其强大程度和综合评价略低于Jinja
  5. Django自带ORM也使Django与关系型数据库耦合度过高,如果想使用MongoDB等NoSQL数据,需要选取合适的第三方库,且总感觉Django+SQL才是天生一对的搭配,Django+NoSQL砍掉了Django的半壁江山
  6. Django目前支持Jinja等非官方模板引擎
  7. Django自带的数据库管理app好评如潮
  8. Django非常适合企业级网站的开发:快速、靠谱、稳定
  9. Django成熟、稳定、完善,但相比于Flask,Django的整体生态相对封闭
  10. Django是Python web框架的先驱,用户多,第三方库最丰富,最好的Python库,如果不能直接用到Django中,也一定能找到与之对应的移植
  11. Django上手也比较容易,开发文档详细、完善,相关资料丰富

评论0 赞同0
  •  加载中...
ASCH

ASCH

回答于2022-06-22 19:46

django是一个功能全面的开发框架,自己就包含了模板、对象关系映射(ORM)、数据库访问、权限控制等等开发一个应用所需的大部分功能。可以说学会了它,基本上就可以用Python做东西了。不过相应的,django的缺点就是比较重,如果你要做的东西不是很大,可能会感觉用django就是大炮打蚊子。


flask就相对轻量级很多了,专注于处理http的这些基本功能。如果你只想弄几个网页,后台套点SQL,可能flask就是最适合的了。不过用flask也不用太担心用起来不方便,现在有很多针对flask开发的模块,协助完成数据库、权限、等等各方面。你用到什么功能,就去寻找对应的flask模块导入到项目中。这样项目不会很大,而且开发也很方便。


当然如果有余力的话,最好两个都学一学,作为Python web领域几个最著名的框架,学了肯定对自己的技术有很多帮助的。

评论0 赞同0
  •  加载中...
villainhr

villainhr

回答于2022-06-22 19:46

flask就像你刚买的房子,构架都在,就是没有装修,任何地方都可以自己加工装修,danjo就像已经装修好的房子,什么都有,不好更改

评论0 赞同0
  •  加载中...
weapon

weapon

回答于2022-06-22 19:46

1、Django是一款重量级的Python开发web框架,功能齐全,不同的人用Django来开发,开发出来的东西基本架构都是一样的,但是Flask是一个轻量级的web框架,相对来说更加灵活,每个人开发出来的东西架构可能完全不一样,

所以对于团队级别的大型项目来说,比较适合选择Django,因为整个团队比较容易达成一致的架构,不会陷入无休止的会议讨论,里面很多东西不需要自己设计,拿来即用,快速开发。

而对于个人开发的小项目来说,也可以用Django,也可以用Flask,用Flask的话,可以设计自己的项目架构,不必拘泥于Django的固定模式。但是对于经验少的开发者来说,这里就比较困难了

2、Flask对于加深Python学习有很大帮助,因为Flask不像Django很多东西都是现成的,需要自己去写

3、Django对新手来说比Flask容易上手,正是因为灵活性的原因

评论0 赞同0
  •  加载中...
h9911

h9911

回答于2022-06-22 19:46

如果你是一个人开发,并且想高效率,听我的,必须用 django ,省心省时省力,django 确实大而全,但是开发起来快啊,操心最少,再说了服务器上又不缺那么几十M的空间。

评论0 赞同0
  •  加载中...
mating

mating

回答于2022-06-22 19:46

Django自带好多插件,而flask需要找第三方插件来继承,现得更加灵活,轻巧,但是当写一个一般的系统功能,flask就写成了类Django了。只要你会了django,很快flask就会边做边学。

评论0 赞同0
  •  加载中...
RyanHoo

RyanHoo

回答于2022-06-22 19:46

Django就是一个标配的厨房,电饭煲、微波炉、灶台、洗手盘等一应俱全,有菜就可以做;Flask是一个空间,空间旁边也有电磁炉、微波炉、电饭煲这些,你需要就自己拿过去这个空间里用。如果你想炒个面,可能厨房有点大材小用,你就在空间旁边拿个电磁炉过去用一下就好。当然你用厨房也不是不行,你开心就好。

评论0 赞同0
  •  加载中...
zxhaaa

zxhaaa

回答于2022-06-22 19:46

做后端,php的性能远强于python

评论0 赞同0
  •  加载中...
ivydom

ivydom

回答于2022-06-22 19:46

用PHP,asp.net,jsp不是很好吗?干嘛要去用python开发网站呢?

评论0 赞同0
  •  加载中...
hufeng

hufeng

回答于2022-06-22 19:46

一个全给你做好了,一个什么都要自己做。推荐去中公教育学习

评论0 赞同0
  •  加载中...

最新活动

您已邀请0人回答 查看邀请

我的邀请列表

  • 擅长该话题
  • 回答过该话题
  • 我关注的人
向帮助了您的网友说句感谢的话吧!
付费偷看金额在0.1-10元之间
<