前段时间和大家一起分享了一篇关于学习方法内容 《大牛与搬运工的差距——学习方法的力量》。我们将学习过程分成八步,并借鉴了敏捷开发的迭代思想,以达到自我迭代学习的效果。行胜于言,理论结合实践才是王道,所以本文我将基于前面的学习方法,分享我是如何学习python的。

为什么学习python?

“Life is short, you need Python!”       ——Bruce Eckel
python是一种被广泛使用的高级编程语言,其代码语法简洁、可读性强,并且具有丰富和强大的库。python简单易学,应用广泛,web开发、爬虫、运维、人工智能……可以说无所不能。python去年还被列入了全国计算机等级考试科目,也逐步成为小白踏上编程之路的入门语言了。
“人生苦短,我用python!”用python干什么?这个因人而异,个人而言,我学习python主要用于两个方向:爬虫和运维,工作上可以帮助我们复杂工作简单化,重复工作自动化,以及以后的人工工作智能化。
本文和大家探讨的是学习python的方法,接下来我们就马上开启python的学习之旅。

1.确立目标

我对python的定位,其实就是一个提升工作效率的工具,我学习python的目的简单明确,总的来说就两个:
1.学习python语言,并能用它来爬取数据做数据分析;
2.使用python制作一些脚本工具,以帮助并提升工作效率。

2.拆分任务

我们通过逆向分解,将目标拆分成具体的可执行任务。这个过程其实就是将目标细分整理成具体的小目标或问题,然后将其关联到一个个可执行的任务,目的是完成目标或解决问题。
完成我的两个目标,需要具体学习哪些知识,完成哪些事项呢?第一个目标需要学习python的基本语法,像数据类型、逻辑结构、列表、元组、字典、引用等基础知识,以及爬虫相关的requests、urllib、pycurl、tornado等模块。第二个目标则需要根据平时工作的实际需求,进一步借助python语言及相应模块来制作脚本工具,以提升工作效率。
梳理之后,目标就会被分解成一个个需要完成的具体任务。这里我借助“然之协同”里的 任务管理工具,将需要做的任务都罗列出来,方便后面执行跟踪。

拆分任务

3.搜集知识资源

学习过程中必然少不了各种学习资料,在搜集知识资源时主要侧重三方面:书籍、官方文档和网络技术文章。
我学习的是python 3.x版本,首先找的就是python的 官方文档,内容既权威又全面。(英语确实是道坎。)其次书籍买的是《Python基础教程(第2版)》、《Python网络数据采集》,同时网上也下载了基本PDF电子书。除此之外,还在CSDN、掘金、博客园等IT技术门户里查阅一些python相关的“干货”。
对于知识资源的搜集,还是要提醒大家注意一点,切勿做“收藏控”。很多朋友对于书籍、各种教程、网络文章等资源,购买了下载了收藏了,然后,就没有然后了,最终真的沦落为“收藏品”。而我们真正要做的是要把知识“收藏”并沉淀到我们脑子里。

python书籍推荐

4.分配自身资源

其实就是时间管理。我们时间、精力等各方面资源有限,所有的知识不可能平均分配有限资源。对于我们搜集的知识资源,要分清主次,然后使用不同的时间管理策略进行学习。

前面梳理了一些需要执行的学习任务,并整理了大量的学习资源,这一步要做的就是将这些任务、资源结合自身的实际情况,合理规划分配时间精力。每个人的情况不同,所以这一步因人而异,这里我还是借助“然之协同”的待办工具,做一个具体可执行性的学习计划。

待办时间规划

5.勤学

学习效率与效果取决于执行力。之前文章介绍过学习过程中的一些方法论,这里我简要地介绍一下学习python时的大体过程。
a.快速泛读
如果你有一定语言基础,比如我之前学过C、PHP语言,再学起python来上手就相对快一些。基本的语法知识可以先快速过一遍,像python的模块库、对象等知识可以先了解基本的应用流程,具体的细节问题在后面的使用操作时在深入研究。
b.深入解读
由浅入深地沉淀每个知识点。python的语法与其他语言还是有区别的,比如列表、字典、循环结构等,而且python2和python3在语法上也有些变动。虽然我直接学习的python3,但python2的一些不同之处还是要了解的,毕竟很多python资源模块在2上已经很成熟了。
c.问题攻读
对于学习过程中遇到的问题,先查阅资料或谷歌来解决。比如python2和3的区别,作为爬取模块的requests、urllib、pycurl、tornado的区别等等。如果有难以解决的问题,可以先记下,或许后面会柳暗花明或找他人帮助。
这一步学习的正确姿势是在实践操作中发掘问题,然后带着问题找答案。
6.建立知识体系

不要以为这一步可有可无,建立知识体系有助于帮我们理清各个概念和知识点之间的关联,逐渐形成系统的知识体系。基于前面的大量泛读和深入解读,我们可以逐步构建出一个知识体系。这里我借助xmind脑图工具,整理了一下python的知识体系。

7.好问

基于前面问题攻读后还有未解决的问题,就要求教他人获取帮助了。提问也是一门艺术,这仍是一个学习交流的过程,而不是让别人去解决原本你该解决的问题。
向别人提问求助时,要讲问题的来龙去脉讲清楚,如怎么引起的,自己尝试做了哪些操作等等。这些年在众多技术交流社群和平台,见过很多奇葩的提问方式,这里列几个,与大家共勉。
a.直抛结果型
直接甩出一张截图或错误提醒,并附上一句:怎么解决?怎么破?跪求科普……
b.不懂就问型
不动脑,不动手,碰到问题就问。这种选手即便帮他解决了问题,他也学不到东西。
c.懒人型
与前者类似,但更滑稽可笑,看到这种问题我个人向来直接无视。比如“这个问题是这样操作么?”,“我这样整对不对?”,“是点这里么?”……

8.分享复述

其实即便不提“费曼技巧”,我们很多人在学习时都会用到分享复述这个方法。无论是演讲、录视频、还是像我此刻这样写文章,其实都是在向他人阐述自己对知识的理解和观点,然后大家会给自己一些反馈,比如你的错误、问题,接着自己再回归到知识里完善不缺“漏洞”,如此迭代学习。

实战演练

我之前整理的另外两篇python实例:
《[实战演练]python3使用requests模块爬取页面内容》
《Python3分析sitemap.xml抓取导出全站链接》

小结

我将自己学习python的过程分为八步:
1.确立目标:没有目标的学习是不会有结果和效果的。
2.拆分任务:将目标分解成具体可执行的学习任务。
3.搜集知识资源:查阅官方文档、购买书籍、搜集网络干货文章。
4.分配自身资源:合理分配时间精力,制定学习计划。
5.勤学:强大的执行力是学习的根本保障。
6.建立知识体系:将学习的知识在脑海里建立系统模型。
7.好问:避免孤立学习,但好问也要会问。
8.分享复述:检验学习成果,提高学习效果的最好方法。

作者:GavinHsueh,QQ/微信:753391279,专注项目管理、办公自动化、网站建设等web应用开发领域。
更多技术文章、互动交流,欢迎关注公众号:

干货 | 学习Python的正确姿势相关推荐

  1. 自学python需要买书吗-学习Python的正确姿势—基础教学,教科书该怎么买?

    学习Python的正确姿势-基础教学,教科书该怎么买? 2019-05-07 18:52:46 23点赞 377收藏 4评论 写在前面: 四月读书季,京东图书大促销,赶上优惠的尾巴,抢购了几本心水很久 ...

  2. 自学python买什么教材-学习Python的正确姿势—基础教学,教科书该怎么买?

    学习Python的正确姿势-基础教学,教科书该怎么买? 2019-05-07 18:52:46 23点赞 377收藏 5评论 写在前面: 四月读书季,京东图书大促销,赶上优惠的尾巴,抢购了几本心水很久 ...

  3. 学习python的正确姿势——

    python作为编程语言中极具发展潜力的一种,已经被越多越多的应用在各个场景下,那么如何学习python就成了大家都关心的问题.事实上,python的学习并不困难,难的是坚持去学习,通过系统的梳理知识 ...

  4. 学习 Java 的正确姿势

    2019独角兽企业重金招聘Python工程师标准>>> 关于学习 Java 的正确姿势,以下几点是网上看到的,觉得和我的想法差不多,于是分享一下.可能和时下有些人的想法大相径庭,但是 ...

  5. 专访 TensorFlow 贡献者唐源:掌握 Google 深度学习框架的正确姿势

     专访 TensorFlow 贡献者唐源:掌握 Google 深度学习框架的正确姿势 TensorFlow 开源 数据科学 XGBoost Spark 阅读2704

  6. Python学习笔记 - 用VSCode写python的正确姿势

    最近在学习python,之前一直用notepad++作为编辑器,偶然发现了VScode便被它的颜值吸引.用过之后发现它启动快速,插件丰富,下载安装后几乎不用怎么配置就可以直接使用,而且还支持markd ...

  7. 【AI创新者】TensorFlow 贡献者唐源:掌握 Google 深度学习框架的正确姿势

    自 2015 年底开源到如今更快.更灵活.更方便的 1.0 版本正式发布,由 Google 推出的第二代分布式机器学习系统 TensorFlow 一直在为我们带来惊喜,一方面是技术层面持续的迭代演进, ...

  8. 用VSCode写python的正确姿势

    最近在学习python,之前一直用notepad++作为编辑器,偶然发现了VScode便被它的颜值吸引.用过之后发现它启动快速,插件丰富,下载安装后几乎不用怎么配置就可以直接使用,而且还支持markd ...

  9. vscode使用教程python-用VSCode写python的正确姿势

    最近在学习python,之前一直用notepad++作为编辑器,偶然发现了VScode便被它的颜值吸引.用过之后发现它启动快速,插件丰富,下载安装后几乎不用怎么配置就可以直接使用,而且还支持markd ...

最新文章

  1. 如何从 900 万张图片中对 600 类照片进行分类? | 技术头条
  2. JAVA学习笔记——JAVA基础语法(四)
  3. js面向对象程序设置——创建对象
  4. MySQL 输入任何语句都提示You must reset your password using ALTER USER 解决方法
  5. android 视频录制小例子,android 录制视频实例 VideoRecordDemo
  6. 荣耀30会不会升级鸿蒙,荣耀手机不能升级鸿蒙吗?有博主给出升级名单
  7. Windows 安装Bazel (安装过程中报远程服务器错,先记下来方法)
  8. 谷歌正式推出在线云储存服务Google Drive
  9. OpenCV图像处理基础操作(1)
  10. 基于snipe-it v5.1.2开源资产管理软件二次开发安卓端管理app
  11. karabiner-elements
  12. 电路方案分析(十)2 端口 USB 3.0 集线器参考方案设计
  13. Hook android系统调用研究(一)
  14. 红米android版本,红米note2安卓版本号是多少?红米note2版本介绍
  15. 常见英文专业名词缩写——未完待续
  16. 《勋伯格和声学》读书笔记(十二):小下属关系
  17. 如何在开发和生产环境中使用 Docker 容器化 Golang 应用
  18. php 命名空间 函数调用,PHP 命名空间 namespace 函数调用 类引用 详解
  19. TS 常见问题整理(60多个,持续更新ing)
  20. 企业检具、量具管理系统---可以试用,有需求者留言

热门文章

  1. 如果我很有钱,如果我很漂亮,会怎么样?
  2. 软件分享:最好用的免费图片转漫画风图片软件,真的不要吗?
  3. 结构化数据与非结构数据、监督学习与非监督学习、标记与无标记
  4. ansible介绍、安装、远程执行命令、拷贝文件或目录、远程执行脚本、管理任务计划、安装包和管理服务、playbook、变量、循环、条件判断、handlers、安装nginx、管理配置文件
  5. aardio - 【库】滴答表格
  6. softmax loss对输入的求导推导
  7. Hive 函数UDF开发以及永久注册UDF函数
  8. [转载]线性规划问题和Matlab函数linprog的使用
  9. android 录屏 github,GitHub - mabeijianxi/ScreenRecordPushStream: Android 录屏推流demo
  10. 新人入坑,承蒙不弃,java上高速!