有了Python的基础之后,如何继续提升,建议先从挖掘自己的需求做起。
因为挖掘需求和通过自己搜索学习实现自己需求,实际上比学会Python还重要,学习Python也好,学习前端也好,目标都是最终实现需求,最终都是为了创造出自己的作品,而且在这过程中,你挖掘需求,搜集信息,学习知识,解决问题的能力会大大提升,所以不要浪费自己锻炼机会。
要知道,用Python编程的过程,其实对很多人最困难的部分,不是熟悉Python的语法,也不是对Python脚本的调优,更不是无法理解Python的一些高阶语法例如修饰器描述器的概念,而是google搜索的能力不足,没办法找到针对自己的问题,没能力搜索找到好用的Python库。如果你没办法遇到问题,搜索找到好用的Python库或者代码,那Python在你手上已经用废一半,Python之所以能成为这么流行语言,正式有大量好用的第三方库,而你遇到的问题一定不会新鲜,大概率已经有人遇到过,并且给出了解决方案,你要做的就是找到他们怎么解决,用了哪些第三库或者代码,以及快速学习库,然后快速把问题解决掉。
在Python的世界,大概率不需要原创什么算法,你要做的用各种库组合搭配,就像搭积木一样搭出方案,解决你遇到的问题。一个Python程序遇到问题,埋头苦干,苦写一个礼拜勉强写完解决问题的代码,而另个Python程序员搜索到一个好用库,组合下,几个小时就把问题解决. 和其他语言的哲学,”不重复发明轮子“ 可是Python社区的信条,能不自己重头写代码坚决不自己写代码。
所以你进一步提高自己流程建议如下:挖掘自己的需求
分析需求给出方案
搜索到合适的库
在库的基础实现自己的功能
实现后分享到朋友和github
挖掘自己的需求
从自己日常生活中出发,比如自己关注某个东西的价格,经常上去看价格,一旦低于多少价格想通过微信通知自己,或者自动抓起比如天气或者相关信息,推送给微信上某个好友。又或者把自动采集你关心的文章或者小说,定时采集发送到你的微信上等等,又每天的工作有重复的excel的数据来生成胶片,那么你就准备写个脚本自动从excel按照一定格式生成胶片。
从你自己日常工作出发,特别是哪些日常重复次数特别多大的生活学习的事务,比如每天都会刷固定几个网站的新闻,比如每天工作都必须固定根据某些信息出一份PPT或者报告等等,这些重复性,有很大共同性的生活工作事务,从中挖掘自己的需求和”痛点“,因为这些重复性的事务一旦被你用Python自动化了,可以提高自己的效率和方便自己生活工作,你会有足够的动力去实践下去。
分析需求给出方案
找到自己需求和”痛点“后,首先分析下,这个需求或者”痛点“是否够频繁,比如说你喜欢的那个网站的新闻和文章,或者某几个小说网站,是否每天你都去打开看看,频次足够高的痛点和需求,说明解决它对你的价值越大,越值得投入时间解决。
然后分析你的这个需求,比如你喜欢某个物品,你都会在哪些网站去比价,你是通过哪些维度去比较的,要把自己思路梳理清楚,最好用个文字或者表格,把你的需求详细的描述下来,并把里面逻辑都写清楚,比如你每次去3个网站上搜搜那个物品,每次看一下信息:价格,图片,规格等等,你对比的逻辑是XXX,这些都梳理描述清楚。
继续分析你的整个需求,哪些可以自动化,比如是不是可以自动去那几个网站把那个信息怕下来,按照你要想要的格式,生成一个大图片,自动从微信发送到你的微信上,这样你再也不用手工去翻各个网站,每天查看下微信就知道了,节省了你的时间。
搜索到合适的库
现在根据上面你自己做的分析,你可以把自己要写的脚本做下拆解:
- 先自动从几个网站爬商品信息
- 把这个商品信息汇总生成图片
- 把图片通过微信发送到我的微信
拆解这几块,就开始用GOOGLE搜索找到合适的库,比如自动从几个网站爬商品信息,那考虑到Python爬去网页内容的库,用github或者google搜索,去找合适的库,有个小窍门,python的库,有些库写着for human ,通常这些库入门比较简单,比如爬网页提取网页信息,你在github上很快就能找到:
Python HTTP for HumansRequests: HTTP for Humans™requests.readthedocs.io
python HTML for Humanshttps://requests-html.kennethreitz.org/requests-html.kennethreitz.org
比如要把商品信息汇总生成图片,搜索下Python Image generate,很容易搜索到pillow这个库Python Pillowpython-pillow.org
又比如你搜索如何给自己微信号发消息,很快就可以找到Itchat这个库:https://github.com/littlecodersh/ItChatgithub.com
快速学习这些库,了解这些库的用法。
在库的基础实现自己的功能
组合你找到的合适的库,你现在已经基本清楚应该怎么去搭配组合这些库,完成一个一个脚本实现你的需求,这个时候你开始写脚本,把你的想法和思路写出来。然后验证测试调测,在这个过程中,这些库的用法你会越来越熟悉。
实现后分享到朋友和github
实现后,如果觉得不错分享给自己朋友或者github,让更多人可以使用,这样你朋友或者github给你反馈可以让你更好的修改和改进的脚本,你会更大动力去持续改进你的脚本,你自己也会从中受益。
总结:Python是个实用主义的语言,不用太过在意一些Python边缘的语法技巧和规则,Python也好,其他语言也好,都是用来解决问题的,学会发现问题,通过自己技能解决问题,分享自己解决方案提高自己的影响力,这个才是重要的,学习python实践python只是手段而已。