你们都是怎么学 Python 的?( 四 )
1)一定要空出时间补充理论知识
很多人会强调learn by doing,边做项目边学习,这也是我自己采用的方式。在这种方式中,你不断犯错,改正……学习效率非常高。但是,很多人走了极端,最后的结果就是不注意理论知识的学习。你会发现自己Google的能力越来越高,但是真实的编程能力并没有得到提升。如果有这种情况,你需要反思一下。
一种可能是你太过于依赖各种成熟的框架,结果编程就变成了用「胶水」去粘合不同的框架完成需求。就好比你的Web App用了SQLAlchemy,虽然自己不太懂SQL,但是网站跑的也还不错。这时候如果数据库出现了问题,那你就只能跪了。
另外一种可能是你完全沉浸在做项目中,忽略了学习理论知识。做项目虽然充满困难,但回报是强烈的成就感,很容易沉浸其中。我觉得这是极其错误的。首先半路出家的程序员都没有经过系统的学习,没有形成自己的知识体系,如果你不懂数据结构,算法复杂度,操作系统这些理论,那么你能达到的高度就极其有限。所以,在每天做项目的同时,一定要保证抽出一定的时间,恶补理论知识。这部分的书单在豆瓣和上都有很多总结,可以自行搜索。
2)不要太纠结于无意义的问题,比如什么框架好,XX语言比XX语言好啦这种问题。前期确定了练手项目,就去专心积累代码量,积累基础知识。那些你现在还看不懂的炫酷技术你慢慢也就能明白是怎么回事了,反而没有基础,再炫酷的框架对你而言都是天书。
3)学会发问。好问题是建立在你自己已经实践或者思考的基础上问出来的,这是对自己的负责,也是对别人的尊重。不要一遇到困难就喜欢直接上网搜索:「这个问题是怎么回事啊?」,「我不明白你能不能帮我看看……」。
4)学好英语。
THE END
最后,给自己打个广告,如果学英语,一定要关注我。

【你们都是怎么学 Python 的?】
■来自的网友回复
第一步:Python语言程序设计_中国大学MOOC(慕课)
第二步:Python入门_Python入门教程_python入门视频教程-慕课网
第三步:Python的N种玩法_中国大学MOOC(慕课)
python教程_python基础教程_python视频教程-慕课网
第四步:上手自己做---遇到问题 谷歌 百度 各个论坛
假装我是最后一步:每天和它约会两个小时,不久你将成为大神!!!推荐一些资源(来着这篇博文--http://www.cnblogs.com/leezx/p/6385327.html)
Python教程 - 廖雪峰的官方网站http://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000python初级教程:入门详解http://www.crifan.com/files/doc/docbook/python_beginner_tutorial/release/html/python_beginner_tutorial.htmlPython 面向对象(初级篇)http://m.blog.csdn.net/article/details?id=50760467Python | Codecademyhttps://www.codecademy.com/zh/learn/pythonGoogle Python编码风格http://www.yeolar.com/note/2013/01/10/python-style-guide/Python正则表达式指南http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html《Python学习手册》《Python编程金典》
■来自的网友回复
我在换第二份 Python 工作时也被 HR 问过类似的问题:你花了多少时间学习 Python,然后开始能正式工作的。
回答是:一两天。
需要介绍下背景:
在我开始写 Python 之前,其实已经在用其他的语言开发项目了,Java、.Net、VB 6.0。
所以在这种情况下,需要学习的就是如何使用 Python 语言表达出来你想要实现的东西,这个跟学习英语或者其他语言差不多,你有想说的东西,只是需要尝试用另外一种方式表达出来。
所谓的一两天其实就是熟悉了 Python 的语法,当时是看了这本书——《简明 Python 教程》:
介绍 · 简明 Python 教程这是刚搜索出来的最新的版本。
这本书很小,花一两天时间看完,以及写写书上代码就能熟悉了。
之后其实就是在工作中跟着别人写好的代码来写代码。
当你对一个语言不是很熟悉的时候,借鉴、模仿现成的代码可以比较快的实现某个实际的功能。
不过,实际上,单纯的读完 《简明 Python 教程》是远远不够的,这个在第二次换工作时能明显感受到。工作中能快速积累的是使用 Python 的经验,解决问题的经验,但对 Python 的基础库以及能力范围(也就是能做的事)掌握会不足。
还是需要系统学习,所以之后又系统看了:

并且把里面对应的练习都实现了一遍:
《Python 基础教程》中的十个项目练习和代码作者:the5fire | 标签: | 发布:2012-02-11 11:15 p.m. | 阅读量: 28439, 26895
python项目练习一:即时标记python项目练习二:画幅好画python项目练习三:万能的XMLpython项目练习四:新闻聚合python项目练习五:虚拟茶话会python项目练习六:使用CGI进行远程编辑python项目练习七:自定义公告板python项目练习八:使用XML-RPC进行远程文件共享python项目练习九:文件共享2-GUI版本python项目练习十:DIY街机游戏对于初学者来说,每次攻克一个练习,得到实际可运行的代码,可以操作的程序,还是可以达到正向反馈的。
之后为了面试还看了 《Python 高级编程》:

理论上当你掌握了 《Python 基础教程》里面的内容,完成了所有练习后,开始干活是没问题了。但是高级编程确实能给面试提供帮助(逃
另外,最近两年出版的《流畅的 Python》也属于进阶以及应对面试准备的「弹药」,当然本质还是为了提升能力嘛。
最后总结一下:
书的话就是三本:
《简明 Python 教程》
《Python 基础教程》
《Python 高级编程》 和 《流畅的 Python》
基本上就是一个阶段搞明白一本就行,看太多的基础类的书作用不大,低水平重复没有意义。
另外编程是一个实践性很强的事,不写代码是没有感觉的,不写完整的程序是没有成就感的。需要的就是在这个循环中「看书 - 实践 - 解决问题 - 总结」不断的重复。
相关回答:
如何高效学python?编程时如何让自己有耐心高效的找bug(有什么找bug的好方法)?你是如何学习Django的?程序员怎么提升自己?
最后补充一点:有兴趣做 Web 开发的同学不妨关注下《Django 企业开发实战》:
Django企业开发实战 (豆瓣)有在线试读版:
课程介绍 · Django企业开发实战教程
■来自的网友回复
给大家推荐一个 Python 学习资源,作者是:两点水。
IT 行业相对于一般传统行业,发展更新速度更快,一旦停止了学习,很快就会被行业所淘汰,但是,我们要清楚:淘汰的永远只是那些初级水平的从业者,过硬技术的从业者永远都是稀缺的。因此对于学习,我们还是要踏踏实实的。
自学 Python ,也是一样,不要一开始因为头脑发热就不停地收藏各种资料网站,购买各种书籍,下载了大量的教学视频,过了几天,学习的热情开始褪去,再过几个星期,终于完成了学习课程 —— 《从入门到放弃》。所以,学习 Python 需要一步一个脚印,踏踏实实地学。
FQ在讲 Python 如何入门之前,个人建议最好每个人都有自己的 FQ 工具,多使用 Google 搜索,多去看一下墙外的世界,多看 Github 上的开源项目。
至于如何 FQ ,这里提供了一些作者用过的工具:FQ工具集
Python 学习资源集相信很多人学习某门编程语言的时候,都会找各种学习资料。说句实话,资料太多,反而没用,根据自己的学习习惯,个人能力选择一门资源坚持学就好了。
因为每个人的需求不同,这里整理了一批 Python 比较好的学习资料:
Python 博客网站资源Python 视频教程资源Python 入门对于入门,主要是掌握基本的语法和熟悉编程规范,因此大部分的教程基本一致的,所以还是建议选好适合自己的一个教程,坚持学下去。
在 Python 入门中,本人自己编写了一系列的 《 草根学 Python 》 博客, 是基于 Python 3.6 写的 Python 入门系列教程,为了更好的阅读,把它整理在 GitBook 上;如果 GitBook 访问慢,也可以到个人博客查阅:草根学 Python,希望对各位入门 Python 有所帮助。
主要目录如下:
Python代码规范简明概述注释命名规范第一个Python程序Python 简介Python 的安装第一个 Python 程序集成开发环境(IDE): PyCharm基本数据类型和变量Python 语法的简要说明Python 的基本数据类型基本数据类型转换Python 中的变量List 和 TupleList(列表)tuple(元组)Dict 和 Set字典(Dictionary)set条件语句和循环语句条件语句循环语句条件语句和循环语句综合实例函数Python 自定义函数的基本步骤函数传值问题函数返回值函数的参数匿名函数迭代器和生成器迭代Python 迭代器list 生成式(列表生成式)生成器迭代器和生成器综合例子模块与包Python 模块简介模块的使用主模块和非主模块包作用域面向对象面向对象的概念类类的属性类的方法类的继承类的多态Python 的 Magic MethodPython 的 Magic Methodhref="https://www.zhihu.com/api/v4/questions/55493026/https://github.com/TwoWater/Python/blob/master/Article/python10/2.md"\u0026gt;构造(__new__)和初始化(__init__)属性的访问控制对象的描述器自定义容器(Container)运算符相关的魔术方法枚举类枚举类的使用Enum 的源码自定义类型的枚举枚举的比较元类Python 中类也是对象href="https://github.com/TwoWater/Python/blob/master/Article/python12/2.md"\u0026gt;使用 type() 动态创建类什么是元类自定义元类使用元类线程与进程线程与进程多线程编程进程一步一步了解正则表达式初识 Python 正则表达式字符集数量词边界匹配符和组re.subre.match 和 re.search闭包装饰器知识点补漏Python 关键字 yieldPython 进阶使用Python虚拟环境Mac中使用virtualenv和virtualenvwrapper
我的其他相关回答:
程序员如何提高生产力?大家对远程工作怎么看?初级程序员,该如何提高?如何才能做一名自由职业者?有什么工作可以远程办公?程序员在哪能接到私单?如何学习编程?顺便介绍些好的网站
- 贵阳正畸医生周新莹@牙齿不白都是这些“害”的,五点原因让你明白牙齿为什么变黄
- 『美食与点心』红烧征服一切!这些红烧菜谱,道道都是米饭杀手,吃货们快收藏吧
- #核桃#别看核桃小,浑身都是宝
- 肾病大夫王暴魁:慢性肾衰竭患者都不爱吃饭?都是以下原因!
- 「搜狐新闻」木筷竹筷容易发霉?小小妙招告别烦恼,都是厨房里常见的东西
- 【清明粑】每一口都是儿时回忆!美食专家教你3步轻松做出清明粑
- 『木子银说情感』心理学家:有这四个特征的人,无论脸上多和善,都是内心阴暗的人
- 「艾滋病」恐艾的九大错误必看 艾滋病恐惧症状都是吓出来的
- 植株■米兰养糟心,满盆都是黄叶子,先别急,做好这6点还能返青
- 快乐养生:我们来照顾母亲,你们放心战“疫”——秦皇岛市一院医护人员情暖前线英雄
