Python入门学习指南分享


Posted in Python onApril 11, 2018

对于初学者,入门至关重要,这关系到初学者是从入门到精通还是从入门到放弃。以下是结合Python的学习经验,整理出的一条学习路径,主要有四个阶段

NO.1 新手入门阶段,学习基础知识

总体来讲,找一本靠谱的书,由浅入深,边看边练。

网上的学习教程有很多,多到不知道如何选择。所有教程在基础知识介绍方面都差不多,区别在于讲的是否足够细(例如运行原理)以及是否有足够的练习。目前推荐大家看书《Python编程 从入门到实践》 ,作者是美国教师,内容从基础知识开始,循序渐进,层层深入,适合零基础者。课程内容第二部分有三个项目实战:外星人入侵、数据可视化、Web应用程序。

不要看很多本,专注于一本,从头到尾看下去,把里面的例子和习题都动手练习一遍,搞懂为什么。编程从一开始就离不开练习,光看是不可能看会的。只有你在电脑上一行一行的敲代码,才会发现其中没注意到的细节问题,才能有更深刻的理解。缩进、大小写、括号、引号、代码执行的方式等,都是早期学习的坑,切记,不要直接复制代码,一定要手动去敲代码、运行代码。

这个阶段最重要的就是:学好基础知识。掌握了基础之后,便可以开始做项目练习锻炼编程思维了。

NO.2 做项目练习阶段,锻炼编程思维

掌握了Python的基础知识后,你会写代码了,但是还无法掌握"编程思维"。因此需要更多的练习,来理解程序的结构设计、算法等,能用1行代码解决的事情,坚持不用2行代码;能1秒运算完成坚决不用2秒

网络上有很多的的Python入门练手项目,例如知乎《Python 的练手项目有哪些值得推荐》 ,里面有很多的练手项目。练习项目,可以锻炼自己的编程思维,同时了解Python的内置库和第三方库,开始学习如何使用这些库

编程入门最好能找一个已经会Python的人,在遇到问题时进行咨询,可以少走很多弯路。但是,要学会查看官方文档和搜索,学会如何更好地提问。没人愿意帮你写作业或是回答那些“一搜便知”的问题。学会解决问题的方法很重要,这将伴随你的编程生涯。

NO.3 真实的项目实战阶段,实际应用

经过一段时间的学习和练习,写过一些小的程序之后,往往会陷入瓶颈,这个时候的你会写代码会做题,但是对于真实的项目开发依然缺少认识(例如如何开始写游戏"外星人入侵"),一旦程序规模较大就无从下手,不知道从哪里开始。这个时候可以去挑战具体的项目了,爬虫、web开发、数据分析、机器学习等广阔的世界已经向你敞开

下面几个图谱可以提供给大家一些学习思路

Python入门学习指南分享

Python入门学习指南分享

在这个阶段,需要有明确的开发目标,并且对目标做一定的设计和功能划分,然后逐步开发直至完成。这其中会遇到各种问题,在不断解决问题时,你的开发水平和问题解决能力也将随之得到提高

还比如:以下是部分项目的实际应用,提供了解决思路和实现过程

  • 抓取美女写真图片并保存
  • 人脸识别-抓取颜值大于70分的美女图片
  • 电影票比价网
  • 12306抢票程序

编程心态很重要,因为编程是个理论与实践相结合的事情,并且实践更重要。从简单的程序开始,坚持练习。一定不能着急,欲速则不达。也不用太在意你做的项目本身是不是够酷炫够高大上。对学习阶段来说,不管好项目坏项目,只要是在写,都不浪费。当你的代码行数积累的一定程度时,你会发现自己的编程能力已经和当年不是一个档次了

NO.4 进阶提升,学习多线程和选择方向

这个阶段的你,已经可以写项目了,但是对于底层可能了解的还不够。例如,同样的代码量,如何使得代码运行的效率更快更节省内存?这些需要不断的提升,需要学习多线程和多进程。我目前处于这个阶段,也处于学习状态,所以讲的可能不完全对,一起探索

学习编程需要持之以恒,对于初学者需要选个感兴趣的领域,选择一个方向,专注的深入学习,努力成为该领域的专家。当然,大神一般都是个个领域都神通广大,谁让我们是菜鸟呢,还是先选个方向踏踏实实的努力吧

1. Web开发方向

建议看简单的框架flask,推荐《Flask Web开发:基于Python的Web应用开发实战》

2. 数据分析方向

建议看《利用Python进行大数据分析》,主要讲Pandas库和数据分析。很多金融巨头,用Python进行数据分析。引用大神Kirat的话说,“它正在快速代替主流金融机构中使用的工具和语言,并成为事实上的标准”

3. 科学计算方向

建议看《python_sci用python进行科学计算》

4. AI的机器学习方向

建议看《Hands-on ML with Scikit-learn and TensorFlow》

5. AI的计算机视觉方向

建议看《Python计算机视觉编程》,我还在看,虽然看得不多

6. 网络爬虫方向

更多关于python安装教程的文章请参考《python各版本安装教程》

更多精彩书单,请点击python编程必备书单

领取干货:零基础入门学习python视频教程

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Python中使用第三方模块的教程
Apr 27 Python
python检测某个变量是否有定义的方法
May 20 Python
Python自动登录126邮箱的方法
Jul 10 Python
深入解析Python中的descriptor描述器的作用及用法
Jun 27 Python
深入浅析Python中的yield关键字
Jan 24 Python
Python实现Linux监控的方法
May 16 Python
Django自带日志 settings.py文件配置方法
Aug 30 Python
python 魔法函数实例及解析
Sep 25 Python
以SQLite和PySqlite为例来学习Python DB API
Feb 05 Python
django为Form生成的label标签添加class方式
May 20 Python
Pycharm生成可执行文件.exe的实现方法
Jun 02 Python
彻底解决pip下载pytorch慢的问题方法
Mar 01 Python
对numpy和pandas中数组的合并和拆分详解
Apr 11 #Python
pandas 取出表中一列数据所有的值并转换为array类型的方法
Apr 11 #Python
深入浅析python with语句简介
Apr 11 #Python
python实现微信自动回复功能
Apr 11 #Python
Python实现检测文件MD5值的方法示例
Apr 11 #Python
python 输出上个月的月末日期实例
Apr 11 #Python
Python简单计算文件MD5值的方法示例
Apr 11 #Python
You might like
PHP中,文件上传
2006/12/06 PHP
PHP MYSQL乱码问题,使用SET NAMES utf8校正
2009/11/30 PHP
PHP isset()与empty()的使用区别详解
2010/08/29 PHP
PHP中return 和 exit 、break和contiue 区别与用法
2012/04/09 PHP
php常用图片处理类
2016/03/16 PHP
Extjs列表详细信息窗口新建后自动加载解决方法
2010/04/02 Javascript
JS window对象的top、parent、opener含义介绍
2013/12/03 Javascript
javascript使用定时函数实现跳转到某个页面
2013/12/25 Javascript
为什么JS中eval处理JSON数据要加括号
2015/04/13 Javascript
浅析jQuery中使用$所引发的问题
2016/05/29 Javascript
浅谈javascript控制HTML5的全屏操控,浏览器兼容的问题
2016/10/10 Javascript
js中获取 table节点各tr及td的内容简单实例
2016/10/14 Javascript
浅谈js键盘事件全面控制
2016/12/01 Javascript
Node.js数据库操作之连接MySQL数据库(一)
2017/03/04 Javascript
vue 微信授权登录解决方案
2018/04/10 Javascript
深入理解Angularjs 脏值检测
2018/10/12 Javascript
JavaScript实现新年倒计时效果
2018/11/17 Javascript
Element-ui自定义table表头、修改列标题样式、添加tooltip、:render-header使用
2019/04/11 Javascript
史上最为详细的javascript继承(推荐)
2019/05/18 Javascript
Node.js API详解之 vm模块用法实例分析
2020/05/27 Javascript
Python ORM框架SQLAlchemy学习笔记之关系映射实例
2014/06/10 Python
Python进阶篇之字典操作总结
2016/11/16 Python
python判断一个集合是否为另一个集合的子集方法
2018/05/04 Python
Python实现的本地文件搜索功能示例【测试可用】
2018/05/30 Python
详解Python3中的迭代器和生成器及其区别
2018/10/09 Python
python使用tomorrow实现多线程的例子
2019/07/20 Python
哪些是python中web开发框架
2020/06/17 Python
年度考核自我鉴定
2013/11/09 职场文书
个人工作表现评语
2014/04/30 职场文书
会计专业求职信
2014/08/10 职场文书
自愿离婚协议书2015
2015/01/26 职场文书
学会感恩主题班会
2015/08/12 职场文书
2016七夕情人节感言
2015/12/09 职场文书
Vue项目中如何封装axios(统一管理http请求)
2021/05/02 Vue.js
使用Ajax实现进度条的绘制
2022/04/07 Javascript
Python中的socket网络模块介绍
2022/07/23 Python