这是一篇 Python 入门指南,针对那些没有任何编程经验,从零开始学习 Python 的同学。不管你学习的出发点是兴趣驱动、拓展思维,还是工作需要、想要转行,都可以此文作为一个参考。
在这个信息爆炸的时代,以 “Python入门” 为关键字搜索出的结果成千上万。不少小白选手难免会东一榔头西一棒槌,最终花了很多时间,也没跨过新手那道门槛。
结合自身的学习经验以及与很多自学者的沟通了解,我们整理出一条可操作性较强的自学路线,同时收集了多种形式的 Python 优质学习资源,供诸位尚未入门或刚入门不久的同学参考。
我是一名python开发工程师,整理了一套python的学习资料,从基础的python脚本到web开发、爬虫、
数据分析、数据可视化、机器学习、面试真题等。想要的可以进群:688244617免费领取
编程是一门技术,也可说是一门手艺。如同书法、绘画、乐器、雕刻等,技艺纯熟的背后肯定付出了长时间的反复练习。编程的世界浩瀚无边,所以请保持一颗敬畏的心态去学习,认真对待写下的每一行代码,甚至每一个字符。收拾好自己的心态,向着编程的世界出发。
第一步至关重要,是关系到初学者从入门到精通还是从入门到放弃。选一条合适的入门道路,并坚持下去。
1.1 配置 Python 学习环境
Python2 还是 Python3?
这应该是不用纠结的一点,Python3毕竟是未来的趋势
编辑器该如何选?
我推荐 pycharm 社区版,配置简单、功能强大、使用起来省时省心,对初学者友好。并且还是完全免费的!
其他可以尝试的编辑器:
为了让初学者集中更多的精力在写代码这件事情上,所以我们就不推荐 vim 和 Emacs 了。
操作系统?
Python 支持现有所有主流操作平台,不管是 windows 还是 mac 还是 linux,都能很好的运行 Python。并且后两者都默认自带 Python 环境。
1.2 入门教程
《Crossin的编程教室 - Python 入门》
自认为算得上是最浅显易懂的入门教程,很适合没有任何编程基础的人上手。74篇图文教程,从最简单的 Python 安装到基本语法、数据结构、函数、文件操作、网络请求、面向对象等逐步深入。
对于如何加深对一个知识点的印象,最好的办法就是自己写代码实现一遍。如果还是不懂,那就再来一遍。所以无论你使用什么教程,都请将其中的示例代码全部在电脑上输入并运行,learning by doing!
配套练习
Crossin的编程教室 - 基础练习
课外练习《笨办法学Python》
这是本很有名的 Python 书籍,但并不适合纯零基础自学。因为其中重实践但不解释,新手很容易看得一头雾水。作为学习同时的辅助倒更合适。
其他推荐教程
《简明 Python 教程》
这是一本言简意赅的 Python 入门教程,简单直白,没有废话。适合有过其他语言基础的人快速了解 Python 语法。
以上是我推荐的学习材料,主要偏重没有太多编程基础的纯新手。
2. 提升阶段
完成入门阶段的基础学习之后,常会陷入一个瓶颈期,通过看教程很难进一步提高编程水平。这时候,需要的是练习,大量的练习。
可以从书上的例程开始写,再写小程序片段,然后写完整的项目。
我们收集了一些练习题和网站。可根据自己阶段,选择适合的练习去做。建议最好挑选一两个系列重点完成,而不是到处浅尝辄止。
https://www.hackerrank.com/domains/python/py-introduction
https://www.codewars.com/?language=python
LeetCode
牛客网-专业IT笔试面试备考平台,最全C++JAVA前端求职题库,全面提升IT编程能力
CodeCombat中国 - 中国爱好者的 CodeCombat!在游戏中学习编程
https://projecteuler.net/archives
3. 遇到问题怎么办?
学习的过程中或多或少都会有各种问题出现,不要试着逃避,真的勇士敢于直面惨淡的 BUG。
第一步肯定是利用好搜索引擎,怎么用也是一门技术活:
编程初学者如何使用搜索引擎
第二步,求助于各大同性交友网站(大雾):
StackOverflow
http://stackoverflow.com/
v2ex
https://www.v2ex.com/
segmentfault
https://segmentfault.com/
4. 写在最后
经过第一步和第二步训练,相信一般的小程序都难不倒你了,你已经在编程的世界里已经迈出了关键的一步。接下来就可以去挑战具体的项目了,爬虫、web开发、数据分析、机器学习等等丰富的世界已经向你敞开,选择一个方向重新出发吧!
记住:在编程的道路上,没有捷径。