Python初学者(零基础学习Python、Python入门)书籍、视频、资料、社区推荐

PythonShare
=============
   *Python初学者(零基础学习Python、Python入门)书籍、视频、资料、社区推荐*  
------------------------
本文 **主要** 针对 **零基础** 想学习Python者。

一、学会使用搜索引擎,尤其是Google。推荐阅读文章:
--------------------------
  [《如何用好Google搜索引擎?》](http://www.zhihu.com/question/20161362) --知乎问答@崔凯  
  
  [《十大高明的Google搜索技巧》](http://www.williamlong.info/archives/728.html)by-雪影蓝风  
  
  《如何用好Google》by-李笑来    
  

二、学会提问
----------------------------
推荐阅读《提问的智慧》--by [啄木鸟社区](http://wiki.woodpecker.org.cn/moin/AskForHelp)
三、书籍推荐:
--------------------------
0. Python官方文档 [点击打开链接](http://docs.python.org/2/tutorial/index.html) 英语不好的,暂时就先别看了,以后一定肯定要加强英语学习哦;)。

1. 对于零基础者,推荐《How to think like a computer scientist》[点击打开链接](http://www.greenteapress.com/thinkpython/thinkCSpy.pdf),对应中文版本《Python学习笔记--皮大庆》,非常适合零基础入门。

2. 对于零基础者,推荐《Python编程实践》 [点击打开链接] (http://book.douban.com/subject/7059900/)

3. 对于零基础者,推荐《简明Python教程》 [点击打开链接](http://woodpecker.org.cn/abyteofpython_cn/chinese/)

4. 对于零基础者,推荐《笨办法学 Python (Learn Python The Hard Way)》[点击打开链接](http://learn-python-the-hard-way-zh_cn-translation.readthedocs.org/en/1.0/)

5. 对于有其他编程语言基础者,推荐《Python基础教程》[点击打开链接](http://book.douban.com/subject/4866934/)

6. 更多书籍推荐, **知乎问答**:关于 Python 的经典入门书籍有哪些?[点击打开链接](http://www.zhihu.com/question/19593179)

7. 更多书籍推荐, **V2EX问答**:文科生想学Python [点击打开链接](http://www.v2ex.com/t/40397)
四、视频推荐:
------------------------------------------
麻省理工公开课《计算机科学及编程导论》,该课程针对零基础者 [点击打开链接](http://v.163.com/special/opencourse/bianchengdaolun.html)  网易公开课。  

课程介绍
这门课程适用于那些拥有 **很少或没有编程经验**  的学生,它致力于使学生理解计算机在解决问题中的作用,并且帮助学生,  **不论其专业**,使他们对于能够完成有用的小程序的目标充满信心。
五、学习方法
---------------------------------------
### *知乎问答*:零基础,应当如何开始学习 Python ?[点击打开链接](http://www.zhihu.com/question/20039623?nr=1)--by@黎敏

虽然我不是Python高手,但我是零基础,之前会的都是软件PS,PPT之类。

如果目的是想成为程序员,参考教学大纲。

如果只是学程序,理解科技,解决工作问题,我的方式可以参考使用:

1. 找到合适的入门书籍,大致读一次,循环啊判断啊,常用类啊,搞懂(太难的跳过)

2. 做些简单习题,字符串比较,读取日期之类
   《Python Cookbook》不错(太难太无趣的,再次跳过,保持兴趣是最重要的,不会的以后可以再学)

3. 加入Python讨论群,态度友好笑眯眯(很重要,这样高手才会耐心纠正你错误常识)。
      很多小问题,纠结许久,对方一句话点播思路,真的节约你很多时间。耐心指教我的好人,超级超级多谢。

4. 解决自己电脑问题。
      比如下载美剧,零散下载了2,4,5,8集,而美剧共12集,怎样找出漏下的那几集?然后问题分解,1读取全部下载文件名,2提取集的数字,3数字排序和(1--12)对比,找出漏下的。

5. 时刻记住目的,不是为了当程序员,是为了解决问题。

  比如,想偷懒抓网页内容,用urllib不行,用request也不行,才发现抓取内容涉及那么多方面(cookie,header,SSL,url,javascript等等),当然可以听人家劝,回去好好读书,从头读。

  或者,不求效率,只求解决,用ie打开网页再另存为行不行?ie已经渲染过全部结果了。

  问题变成:1--打开指定的10个网页(一行代码就行)。更复杂的想保存呢?利用已经存在的包,比如PAM30(我的是Python3),直接打开ie,用函数outHTML另存为文本,再用搜索函数(str搜索也行,re正则也行) 找到数据。简单吧?而且代码超级短。

6. 保持兴趣,用最简单的方式解决问题,什么底层驱动,各种交换,留给大牛去写吧。我们利用已经有的包完成。

7. 耐心读文档,并且练习快速读文档。拿到新包,找到自己所需要的函数,是需要快速读一次的。这个不难,读函数名,大概能猜到是干嘛的,然后看看返回值,能判断是不是自己需要的。

8. 写帮助文件和学习笔记,并发布共享。教别人的时候,其实你已经自己再次思考一次了。

  我觉得学程序就像学英文,把高频率的词(循环,判断,常用包,常用函数)搞懂,就能拼装成自己想要的软件。

  然后,<http://stackoverflow.com> 和 <http://Google.com> 是很好用的。

  然后,坚持下去。
  一定要保持兴趣,太复杂的跳过,就像小学数学,小学英语,都是由简入深。

  网络很平面,无数国际大牛著作好书,关于Python,算法,电脑,网络,或者程序员思路,或者商业思维(浪潮之巅是本好书)等等,还有国际名校的网络公开课(中英文字幕翻译完毕,观看不是难事),讲计算机,网络,安全,或者安卓系统,什么都有,只要能持续保持兴趣,一点点学习下去,不是难事。

  所有天才程序员,都曾是儿童,回到儿童思维来理解和学习。觉得什么有趣,先学,不懂的,先放着,遇到问题再来学,效果更好。

  唯一建议是,不要太贪心,耐心学好一门优雅的语言,再学其它。虽然Javascript做特效很炫,或提某问题时,有大牛建议,用Ruby来写更好之类,不要改方向。就像老笑话:“要学习递归,必须首先理解递归。”然后死循环一直下去。坚持学好一门语言,再研究其他。

  即使一门语言,跟网络,数据库等等相关的部分,若都能学好,再学其他语言,是很快的事情。

  另外就是,用学英文的耐心来学计算机,英文遇到不懂的词,抄下,查询。

  python里,看到Http,查查定义,看到outHtml,查查定义,跟初学英语时候一样,不要直接猜意思,因为精确描述性定义,跟含糊自然语有区别的。而新人瞎猜,很容易错误理解,wiki,google很有用。
### *芝麻问答*:如何学习Python [点击打开链接](http://www.zhimaq.com/questions/70/python)作者:@halida
#### 如何学习python

我们假设你是一个初级程序员, 只懂得一点点的基础知识, 希望能够用python来做开发. 这篇文档就是为了满足以上目标而写的.

**大纲** 

按照这篇文档所指示的任务过一遍, 你就能够做到:

熟悉python语言, 以及学会python的编码方式. 熟悉python库, 遇到开发任务的时候知道如何去找对应的模块. 知道如何查找和获取第三方的python库, 以应付开发任务. 学习步骤

**安装开发环境**

如果你在window下, 去下载pythonxy安装起来, 然后运行python, 进入python解释环境.

如果你在ubuntu下, 执行: sudo apt-get install python, 然后在命令行下运行python, 进入python解释环境.

**学习方法**

作为一名成熟的开发人员, 我学习新东西(假设是pyqt)的习惯方式是:

直接用google搜索pyqt的官方网站. 按照官方网站的说明, 下载pyqt. (如果是用ubuntu, 看看软件库里面是否有足够新的版本) 下载过程中, 开始阅读官方网站上面的教程. 一边看教程, 一遍按照教程使用pyqt. 如果发现教程不够全面, 用google搜索是否有对应的教学书籍可以看. 示例学习完毕, 开发一个玩具程序, 用来检验自己是否需要用到的功能. 开始学习python

我建议你学习的过程也按照上面来, 首先过一遍python官方文档:

<http://docs.python.org/tutorial/index.html>

然后做 <http://www.pythonchallenge.com/> 这个网站上面的题目.

如果卡在某一关太久, 可以看答案(google python challenge answer), 做完后看看别人的编码方式和自己有什么区别.

**小项目**

做完一遍后, 你会发现已经熟悉了基本的python开发. 然后做点小项目吧. 这里是一些题目, 挑感兴趣的去做.

* 写一个简单的计算器/记账软件/扫雷游戏(用pyqt库做界面)
* 写一个聊天室网站(用webpy框架, jquery刷新新的回复)
* 写一个爬虫, 获取douban上面所有用户的地点, 画地点分布的直方图(用lxml解析, 保存数据到sqlite里面去, 用matplotlib画图)

**FAQ**

Q: 遇到了问题, 到哪里求助?

A: 上 <http://groups.google.com/group/python-cn> (需要翻墙) 或者 <http://stackoverflow.com> 提问就可以了.

Q: 如何查找python的某个功能?

A: 看官方文档. <http://docs.python.org/library/index.html>

Q: 如何用python完成一个任务(比如写网站)?

A: google: python 写网站, 或者 google: python web development.
### *知乎问答*:你是如何自学 Python 的?[点击打开链接](http://www.zhihu.com/question/20702054)  作者:@成增存

**阶段一**:前辈领进门。
第一眼是一个前辈给我看了看Python的代码,因为自己最早学习的是Java语言,第一眼看到Python的时候,前辈说,“Python是面向对象的”,然后就 打印了几句代码。可我怎么也看不出到底哪里是“面向对象”的。前辈说“在Python里,一切皆对象”,我才有点领悟的说道:“原来把什么看成对象,就是面向对象”,哈哈。
 
**阶段二**:开始看的是《Dive into Python》、《Leaning python》、《Python Doc》。
因为有很多语言学习经历,很快就完成了初步语法和使用学习。太复杂的特性还是在使用中逐步掌握的。
 
**阶段三**:开始使用Python做自己的一些日常工作。
比如Python搜索文件,Python批量处理等,使用最多的还是re模块和socket相关模块。写了大量的例子,让自己对Python更加喜爱,也更加熟悉。此时翻阅最多的是《Python Doc》的指南。不管是语言参考、库参考、Demo参考,都有大量可使用的内容,内容质量很高堪比JDK。
 
**阶段四**:生产上马。
开始使用Django,Flask,Tornado开发一些web应用,写一些日常使用的工具包等。逐步提升设计能力,和整体代码的管理能力。
 
**阶段五**:更合理的分配好C,Java,Python三门语言各自擅长的部分。
把合适的语言用到合适的地方。尽管一门语言有时候可以搞定所有的,但用擅长的语言解决合适的问题才是效率最高的。这也是“Python的大道至简”的理念带给我的帮助和认识。
 
PS:其中过程中主要的一些 **方法** :  

1. 看书。学习的基础。

2. 自己本地练习。编程还是要实践出真知。</br>  

3. 资料查询。google,stackoverflow等多关注。</br>  

4. 交流。各种论坛上的python group,论坛。最早去的CU,JavaEye,不过现在貌似去的少了。**google group** 必须订阅。</br>  

   学习+实践+总结,掌握语言的法宝。
六、Just Do It
--------------------------------

看了这么多资料了,还没动手敲代码?
 
好吧,最好一篇文章《我在学习编程中犯的两个 **最大错误** 》[点击打开链接](http://blog.jobbole.com/26552/)

Just do it 。动手敲代码吧。


七、更新
--------------------------------------
Python技术博客、招聘、开源软件、Python中文网站导航 [点击打开链接](http://simple-is-better.com/sites/)

遇到python问题怎么样解决?python help dir stackoverflow docs google [点击打开链接](http://blog.csdn.net/xiaowanggedege/article/details/8753013)

在线视频教学(英文) [点击打开codecademy](http://www.codecademy.com/zh/tracks/python)

英文[pythonforbeginners](http://www.pythonforbeginners.com/)

英文How do I learn Python from zero to web development?(各种电子书推荐)[点击打开链接](http://programmers.stackexchange.com/questions/12189/how-do-i-learn-python-from-zero-to-web-development)



最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,491评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,856评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,745评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,196评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,073评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,112评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,531评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,215评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,485评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,578评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,356评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,215评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,583评论 3 299
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,898评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,174评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,497评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,697评论 2 335

推荐阅读更多精彩内容