PythonShare

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

本文 主要 针对 零基础 想学习Python者。本文本文由@史江歌(shijiangge@gmail.com QQ:499065469)根据互联网资料收集整理而成,感谢互联网,感谢各位的分享。鸣谢!本文会不断更新。

一、学会使用搜索引擎,尤其是Google。推荐阅读文章

二、学会提问

推荐阅读 《提问的智慧》 by-啄木鸟社区

三、书籍推荐

零基础

有其他编程语言基础

进阶

更多书籍推荐

四、视频推荐

麻省理工公开课《计算机科学及编程导论》,该课程针对零基础者 网易公开课 。

课程介绍

这门课程适用于那些拥有 很少或没有编程经验 的学生,它致力于使学生理解计算机在解决问题中的作用,并且帮助学生, 不论其专业,使他们对于能够完成有用的小程序的目标充满信心。

五、学习方法

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

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

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

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

做些简单习题,字符串比较,读取日期之类

《Python Cookbook》不错(太难太无趣的,再次跳过,保持兴趣是最重要的,不会的以后可以再学)

加入Python讨论群,态度友好笑眯眯(很重要,这样高手才会耐心纠正你错误常识)。

很多小问题,纠结许久,对方一句话点播思路,真的节约你很多时间。耐心指教我的好人,超级超级多谢。

解决自己电脑问题。

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

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

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

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

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

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

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

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

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

然后,坚持下去。

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

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

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

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

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

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

python里,看到Http,查查定义,看到outHtml,查查定义,跟初学英语时候一样,不要直接猜意思,因为精确描述性定义,跟含糊自然语有区别的。而新人瞎猜,很容易错误理解,wiki,google很有用。

芝麻问答:如何学习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官方文档:

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

小项目

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

写一个简单的计算器/记账软件/扫雷游戏(用pyqt库做界面)

写一个聊天室网站(用webpy框架, jquery刷新新的回复)

写一个爬虫, 获取douban上面所有用户的地点, 画地点分布的直方图(用lxml解析, 保存数据到sqlite里面去, 用matplotlib画图)

FAQ

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

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

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

A: google: python 写网站, 或者 google: python web development.

知乎问答:你是如何自学 Python 的?点击打开链接 作者:@成增存

阶段一:前辈领进门。

第一眼是一个前辈给我看了看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:其中过程中主要的一些 方法 :

看书。学习的基础。

自己本地练习。编程还是要实践出真知。

资料查询。google,stackoverflow等多关注。

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

学习+实践+总结,掌握语言的法宝。

六、Just Do It

看了这么多资料了,还没动手敲代码?

好吧,最好一篇文章《我在学习编程中犯的两个 最大错误 》点击打开链接

Just do it 。动手敲代码吧。

注:本文由@史江歌(shijiangge@gmail.com)根据互联网资料收集整理而成。

七、更新

英文How do I learn Python from zero to web development?(各种电子书推荐)点击打开链接

Python应用与实践 Python是什么?谁在用它?相关工具?作者:@吴秦

Python 最佳实践指南(中文) 关于Python安装、配置、和日常使用的最佳实践手册。

八、爬虫以及模拟登陆新浪微博

Python爬虫学习系列教程 @崔庆才系列教程,入门、实战、爬虫利器介绍、进阶

九、工具

python教学视频k_GitHub - y000k/codeparkshare: Python初学者(零基础学习Python、Python入门)书籍、视频、资料、社区推荐...相关推荐

  1. 初学者先学python语音好吗_献给Python初学者 零基础学习Python能学会吗

    献给Python初学者 零基础学习Python能学会吗 时间:2018-01-08     来源:零基础学习Python方法讲解 零基础学习Python能学会吗?这个问题几乎是所有初学Python的小 ...

  2. 【GIS人必学】零基础学习ArcGIS Python脚本开发训练营来了

    Python作为一种高级程序设计语言,凭借其简洁.易读及可扩展性日渐成为程序设计领域备受推崇的语言.ArcGIS软件由于其面向地理问题的科学理念,不断创新的技术方法,已在国内外市场占据了主导地位.Py ...

  3. 即时通讯音视频开发(0):零基础,史上最通俗视频编码技术入门

    [来源申明]本文引用了微信公众号"鲜枣课堂"的<视频编码零基础入门>文章内容.为了更好的内容呈现,即时通讯网在引用和收录时内容有改动,转载时请注明原文来源信息,尊重原作 ...

  4. 小甲鱼python游戏代码_【小甲鱼】零基础学习python pygame 飞机大战可执行源代码...

    [实例简介] [小甲鱼]零基础学习python pygame 飞机大战可执行源代码,觉得挺有意思,故此分享. [实例截图] [核心代码] 飞机大战 └── 飞机大战 ├── bullet.py ├── ...

  5. python可以自学吗需要什么基础-python自学行吗?给编程初学者零基础入门的建议...

    前言 编程是一门高深的学问,对很多人来说都很难掌握,十分晦涩难懂.然而,还是有非常多人喜欢编程,喜欢「写编程」带给自己的乐趣.与满满的成就感.听很多朋友问过,如果是零基础的初心者,想转换跑道学编程该如 ...

  6. python自学行吗-python自学行吗?给编程初学者零基础入门的建议

    前言 编程是一门高深的学问,对很多人来说都很难掌握,十分晦涩难懂.然而,还是有非常多人喜欢编程,喜欢「写编程」带给自己的乐趣.与满满的成就感.听很多朋友问过,如果是零基础的初心者,想转换跑道学编程该如 ...

  7. python适合零基础学习吗-Python适合不适合零基础学习呢?老男孩教育

    Python适合不适合零基础人员学习?Python是一门比较高级流行的变成语言,该语言是非常适合零基础人员学习的,也是初学者的首选.很多人可能编程很难,所以在没有学习之前就觉得难以学习好,其实只要你愿 ...

  8. python初中可以学吗_初中学历零基础想转行Python,能否学会?Python难吗?

    肯定的回答您:这个是一个技术工种学历不是很重要,完全能学会 其实,很多个程序员都是从不会到会,每种知识也是从基础到复杂,大家都是从零基础开始的,有的学员英语和数字基础也很差,从一点都不了解编码到现在非 ...

  9. 零基础学习Python3——Python 安装

    1.Window 平台安装 Python 以下为在 Window 平台上安装 Python 的简单步骤. WEB 浏览器访问 https://www.python.org/downloads/wind ...

最新文章

  1. C++ 检测内存泄露
  2. 考研专业课计算机网络调剂,计算机网络信息中心2019年硕士研究生接收调剂信息公告...
  3. 大疆口袋相机美颜怎么设置_灵眸Osmo口袋云台相机评测-大疆灵眸云相机使用说明...
  4. python文件的基本操作_「Python」 - 文件基本操作
  5. Markdown--编辑表格与矩阵
  6. 正确评估SQL数据库性能,你必须知道的原理和方法!
  7. 计算机名字需要加_PC吗,ecs计算机名字
  8. 洛谷 | P1219 八皇后(DFS)C++
  9. JQuery Easyui/TopJUI 基本树形表格的创建
  10. TS Moly Lubricants TSMoly
  11. WindowsX64下tftp的安装
  12. com4j学习(2):Visio自定义模具和形状,并添加连接点
  13. 抖音培训教程,抖音培训班,抖音培训课程(2019实时更新中) -
  14. 怎么快速调出计算机资源管理器,Win7下快速打开资源管理器的五个方法
  15. 算法与数据结构 03 匹配问题
  16. CSDN上Android与IPhone开发博客精选
  17. unity 条目换位效果_Unity AI主题博客条目
  18. Improved 3D Object Detector Under Snowfall Weather Condition Based on LiDAR Point Cloud
  19. 哇!8款帮你轻松瘦脸的美食
  20. Electron渲染进程与主进程进行通信

热门文章

  1. php完全手册下载_PHP: 序言 - Manual
  2. 归并排序改良 java_Java 八种排序算法总结
  3. Python 数据处理函数 round()、int()、floor()、ceil()的用法
  4. 【Python教程】七种创建对象的方式,你知道几种?
  5. Python合并两个List
  6. Python 常用排序Demo|冒、插、快、希等入门算法
  7. python执行系统命令后获取返回值的几种方式集合
  8. Python 中引入多个模块,包的概念
  9. python命名元组
  10. eclipse创建android工程,在eclipse创建android 工程