Python 0基础入门看这一篇就够了
Python相对C++/Java等语言来讲是一门门槛稍低的语言,并且应用非常广泛,如数据处理、网络编程、机器学习、游戏开发等场景,因此广受欢迎。那么,要学好Python,应该怎么学?有哪些好的学习资料?有哪些实战项目?
网络上的总结也很多,推荐的资料更是五花八门,新手看了可能会很晕,不知道从何入手。其实资料不再多,在于精。我在这里给大家总结了如何从0开始快速入门python能上手进行项目的开发。一般来讲,掌握了学习技巧,2-3个月时间是足够的。总体原则是遵循理论+实践的方式。关于理论学习,首先要打破一个误区是:不要想着把全部的理论知识点全部学会了再去实践,在学习了核心的基础知识点后其实就可以开始实践了,在实践中学习是进步最快的。经常有同学会抱着大块头的书啃,结果发现总是看了后面的忘记了前面的,最终花费了大力气看完后发现还是不会写代码!
根据我自己的学习一门新知识的经验来看,一般是先找入门教程,看下核心的几块知识点,然后就可以上手写一些简单的程序,在写程序的过程中遇到不会的再回过头查资料,这样学起来会非常记忆深刻。
环境准备
IDE:推荐pycharm,配置简单功能强大,适合新手。社区办免费下载使用:https://www.jetbrains.com/pycharm/。
关于版本的选择,其实对于新手入门来讲,2个版本都OK,不过因为未来趋势是Python 3,所以建议选择Python 3。
语言基础
学习基础建议书籍+视频结合的方式来学习。只看书籍会很枯燥,相比书籍,视频会更生动、更有体感。
书籍
入门书籍选择一本就OK,这里强烈推荐《从入门到实践(第2版)》。本书豆瓣评分9.2分。这本书口碑非常好,原版被翻译成8种语言,中文版重印30多次,销量近100万册。
这本书对小白非常友好,学习曲线平滑,首先以浅显易懂的语言介绍了python的核心基础概念,后半部分给出了3个练手项目,并且给出了配套视频「配套视频:https://www.bilibili.com/video/av35698354」和源代码。非常适合入门。
核心基础知识:
- 打牢学习基础
- 搭建编程环境
- 变量和简单数据类型
- 列表简介
- 操作列表if
- 词句字典用户输入和while循环
- 函数
- 文件和异常测试代码
3个项目:
- 外星人入侵游戏
- 数据可视化
- web应用程序
https://book.douban.com/subject/35196328/
视频
这里强烈推荐马士兵 Python 中入门基础版:Python 全栈开发教程从入门到精通 【169 集】,新版Python小白教程,从 0 开始,针对 0 基础小白和基础薄弱的伙伴学习,全程干货细讲。
https://www.zhihu.com/xen/market/remix/paid_column/1449876418532945920

进阶
其实学完第一部分基础以后,就可以开始动手写代码,写实际的项目了。第三部分实战给大家推荐了很多经典的项目,大家可以直接跳到第三部分挑选项目练手,遇到不会的再回头来针对性的学习。
Python的应用很广,方向很多,在基础打扎实后可以挑选自己感兴趣的方向进行深入学习。
web开发
数据分析
非常多的金融企业使用python进行数据分析,推荐书籍:《利用python进行大数据分析》。
机器学习
推荐《Python机器学习实战(第二版)》
https://book.douban.com/subject/35218199/
网络爬虫
推荐视频课程:Python 网络数据采集_迅速上手爬虫开发【77 集】
https://www.zhihu.com/xen/market/remix/paid_column/1449879036386795520
本课程以前端知识为铺垫讲解Python网络爬虫程序的开发,包括页面抓取、页面解析、数据存储、动态内容抓取、常见反爬手段的破解以及相关工具的应用,对于已经有一定Python基础的人,可以通过学习本课程迅速上手爬虫开发,掌握从数据的海洋中获取有用数据的技术。
实战应用
我通过google搜索了相当多的资料,在这里给大家总结了使用python实现的优秀的实战项目,都包含详细的文档和完整的代码,希望能够帮到大家。
使用Django搭建自己的博客网站
这是一个零基础的完整的项目,基于Django 1.10和python 3.5带你从0开始一步一步开发属于自己的博客网站。
https://www.zmrenwu.com/courses/hellodjango-blog-tutorial/
github star 2.2k:https://github.com/jukanntenn/django-blog-tutorial
爬虫练习-将网页博客生成电子书
https://foofish.net/python-crawler-html2pdf.html
微信机器人
github star 13.1K:
https://github.com/youfou/wxpy
一系列小游戏
github star 3.6K:
https://github.com/CharlesPikachu/Games
500行以下代码实现合集
呕血给大家找到了一个非常牛逼的python练手项目合集-《500 lines or less》。大家都遇到过这样的困境,当去看一些开源项目的源码的时候,由于这些项目代码量往往很大,动辄3-5万行代码,结构复杂,对新手非常不友好。这个项目合集里每个项目都短小精悍,代码量不超过500行,但是核心功能齐全,力求从0到1实现一个「麻雀虽小五脏俱全」的项目,非常方便入门学习。强烈推荐!
github地址:https://github.com/aosabook/500lines
包含了如下项目:
web server
作者以幽默风趣的方式带你逐步实现一个web server,除了完整的代码 ,还有幽默风趣的示意图,非常方便理解。
https://ruslanspivak.com/lsbaws-part1/
https://ruslanspivak.com/lsbaws-part2/
https://ruslanspivak.com/lsbaws-part3/