点击上方“ 程序人生 ”,选择“置顶公众号”
第一时间关注程序猿(媛)身边的故事
作者
上海小胖
简介
作者是四大咨询的TechLead,mongoDB Professional 获得者。「Python专栏」专注 Python 领域的各种技术:爬虫、DevOps、人工智能、Web开发等。
本文为作者投稿,如需转载,请联系原作者。
1.
之前那篇「 万字谏言,给那些想学Python的人,建议收藏后细看! 」得到很多后台读者的留言,表示想再来点,甚至说万字系?你知道万字有多少么?不要杠我根本没有万字!不叫万字你能看到这篇良心嘛!
那憋了3天了,今天放个web好了,相信很多读者都有关注web开发,那我们今天就来聊聊web怎么学,学什么。
2.
Python目前应用领域实在太多,这也是他这么火的原因吧,这里熄火,那边着了。
不过我认为目前Python作为应用领域来说几个方向是值得肯定的:人工智能、大数据分析、DevOps、Web、自动化测试、爬虫。
这一看,好像也差不多了么……
不过作为零基础或者刚入门Python的,你也有幸看了那篇万字后,走到了这,那我认为你的ls.py 和find.py 已经写的差不多了。接下来需要往应用方向上靠了。
那我们今天就把目光放在Web这跟线上,其他的先暂时不表,来讨论下「Python Web 如何入门及深入」。
3.
之前说的Python入门中,说的是术,是告诉大家怎么去实践,那今天要说的就是道,就是大方向。
在Python基础方向,我认为必须掌握的技能有:
-
基本数据类型、内置数据结构
-
函数、高阶函数、装饰器
-
迭代器、生成器
面向对象(你可以不用考虑复杂的dunder方法,以及反射、元编程等)
以上,可能在装饰器会有问题,怎么办?跟着例子多敲几遍代码,打断点跟着解释器走几遍流程,自然就清楚怎么回事了。再不济,你print总可以吧?
由于不能给超链接,大家就自己百度谷歌一下网址吧。
学习网站:
学习参考书:
4.
以上基础打扎实了,接下来就来接触点Web知识,如果你要问为什么不是去学框架,原因很简单,没有九阳神功护体,乾坤大挪移只会把自己废了,看看阳教主就知道了。
所以在真正的开始Web之前就要了解点Web知识了:
-
html/css、Bootstrap
-
Javascript
-
JQuery、Ajax 、ECharts
现在大家都知道前端已经不在是以前的jquery天下了,那为什么还要学呢?因为现在我们是学Python,不是前端,没必要把精力耗在这上面,学Web是为了能出界面。
而以上这些已经够用了,JS可能成为你的砍,不过好在有Python的基础,需要习惯的可能就是JS语法和Python的差别。
那这里同样也推荐几个网站和参考书
学习网站:
学习参考书:
5.
好,到了这里,我们可以开始学习Python的Web框架了。
那作为框架来说,他会多少帮你做掉一些事情,作为新手的你,一定搜过「Python Web框架哪个好?」「Python Web框架优缺点」等等,今天就给你个痛快,别搜了,还是那句话,网上的东西太多了,甄别度低,对你帮助不大。
那接下来我就说一下我对几个框架的理解:
Python Web框架中最全的框架,没有之一,甚至我可以说,Django拿到外面的世界,和其他语言的Web框架比一比,都能赢得很体面。
他有强大的后台,所谓的后台就是你写博客网站时的编辑界面,你做电商时候的发布平台,而这一切,只需要你启动Django项目就有了。
但是Django帮我们代理了太多太多,导致很多人看着教程走了一遍,学会了个人博客,真以为自己是绿林好汉了,结果连一板斧都没学到,问啥啥不会,就只知道写个函数,加到urls.py里,request怎么过来的,里面都有什么包,Django是怎么把响应返回的,不知道。
Flask是一个轻量级的Python Web框架,我个人比较喜欢,因为他的轻量,我们可以自己做很多的事情,记住了哦,轻量不是简单,只是把核心功能留住了,那你可以想一想了,作为一个Web框架,他的核心是什么?
Flask适合初学者使用, 因为你不会因为过度依赖框架,而失去自己锻炼的机会。初学,要的就是锻炼,用了Django后,你可能就会失去这项能力。
一个异步框架,很显然,现在的你可能触及这个有点早了,先把同步异步,阻塞非阻塞弄清楚再来了解吧。
至于其他的一些框架诸如web2,bottle我都是不推荐使用的,倒是可以拿来看看源代码,学习一下作者的思想,这倒是极好的。
学习网站:
学习参考书:
6.
最后还是建议大家有空的可以买本「Python Cookbook」看看,真的很赞,看完后总有种赞叹不已,恨自己不能把它吃了……
如果觉得这篇文章还不错,欢迎转发,让更多的学习Python的人看到~
- The End -
「若你有原创文章想与大家分享,欢迎投稿。」
加编辑微信ID,备注#投稿#:
程序 丨 druidlost
点文末 阅读全文 ,看『程序人生』其他精彩文章推荐。
推荐阅读:
print_r('点个赞吧');
var_dump('点个赞吧');
NSLog(@"点个赞吧!");
System.out.println("点个赞吧!");
console.log("点个赞吧!");
print("点个赞吧!");
printf("点个赞吧!\n");
cout <<"点个赞吧!" <