什么都不懂的小白,Python应该怎么学?

什么都不懂的小白,Python应该怎么系统学习?我们来看看这位前辈的分析回答。

真心不建议去“系统地”学习Python。我坚信的一个观念是:语言只是一个工具,一昧地去学习效率其实很低,边用边学反而会掌握地更牢固。大部分中国人的英语是系统学习过的,但是汉语却并不是,而是自然习得的。有多少人的英语是比汉语还要好的?

此外,所谓的系统学习其实很难调动一个人的积极性。高票回答的内容固然是好,抵得上一个网站了,可是你真的看完了吗?给你推荐了这么多书,你都去下载了吧?看完了几本?

就算看完了,又能真的记住多少?先前我也想着去系统地学习一些东西,比如数学比如编程比如经济学。然而大部分的时候只有三分钟热度,资料搜集了倒是一堆,却少有认真看的。真的是买书如山倒,看书如抽丝。相信大部分人都是这样。

所以,不用买任何书籍,甚至网上下载都是不必要的,互联网就是你最好的老师。

对于一个什么都不懂的小白,我觉得了解以下内容,就可以入门了。之后再练习若干时间,就能够基本上掌握Python了。

1.相关概念介绍

2.环境配置

3.编辑器选择

4.基本程序思想

1

相关概念介绍

首先,要知道Python有两个版本,Python2 和 Python3。他们之间的区别就好比北京话和普通话之间的区别,只有少数语法不同。如果没有特别要求,建议一律从Python3开始学,2你就当作不存在。

毕竟更新的版本往往弥补了原先的一些问题和不足,而且也是大势所趋。真要学习2的话基本上也是为了维护现有的项目,对于小白来说那就是很久以后的事情了。

第二,Python的语言特性。零基础的话选择Python是个很好的选择,因为它很快!人生苦短我用Python! 比如,在绝大多数的语言里面,变量是要先声明类型才能使用的:

a是一个变量!这个变量是整数型的!

我们现在把3赋值给变量a!

好的没有问题。但是如果把3.7赋值给a,a还是会等于3,因为它是整数变量。是不是很反人类?但是这样也有它的好处,非常的严谨。在Python里面就不用考虑这些乱七八糟的东西,赋值给a的是啥就算啥,无论是整数还是小数还是其他乱七八糟的结构。当然这样也有坏处,首先编译器判断你是个什么东西就挺花时间的,这也是Python慢的原因之一。

等等!你刚刚还说人家很快来着!

事实上,Python的快指的是写起来快,因为不用考虑这些乱七八糟的定义声明和边界条件。但是作为代价,它跑起来很慢。所以实现一个算法的时候,开发人员往往会先用Python写一遍,尽快得到一个结果;如果结果不错,再用c重写一遍让它跑起来也很快。

Python快还有另外一个原因,它有着大量优秀的第三方库。知乎上经常推送一些什么十行搞定深度学习之类的头条新闻,就是利用这些第三方库。那些被别人写过一遍又一遍的程序直接拿过来用是一件很爽的事情。

2

环境配置

上文说到Python有着大量的第三方库,而且你不可能不用,因此管理这些库就成了一个问题;可能Python2和3之间还要来回切换,两个语言之间可能也会打架。好的环境配置会把这些问题都解决掉——那就是Anaconda。

Anaconda是个什么东西自己去百度,目前你只要知道它能很好地管理Python的开发环境而且非装不可就行了。建议电脑预留1G硬盘容量。如果容量不足的话可以用Miniconda,是同一个东西,Anaconda大一点是因为自己带了很多私货。如果Miniconda都装不了就不要学了,先攒钱买个新电脑吧。

如果是以程序员为职业目标或者有其他语言需求的,建议下个地表最强IDE Visual Studio,里面可以装Anaconda,预留20G容量。正如Anaconda管理着Python的环境一样,VS可以管理着各种语言的环境,还能帮忙装一些框架,总之没坏处的。只是想学个Python玩玩的就不必了,直接装就行。

如果你已经在电脑里装了Python,建议把它删了,Anaconda里面自己带个Python。记得配置环境变量,具体自己百度。

3

编辑器的选择

如果在前面一步装了VS,那用VS本身就可以了,但是我不太建议。VS本身的功能很强大,但是对于初学者来说可能有些太过于繁杂了,本身学习使用VS可能也需要一些成本,以下几个是我比较推荐的编辑器,具体怎么配置环境自己查:

PyCharm

据说是Python最好的IDE了,好评率99%。如果实在没什么别的需求就选它了。

VS Code

和VS不是一个东西,这是个轻量级的编辑器,和PyCharm差别不大,我用起来比较顺手,但是编译起来比较慢。如果断点调试(就是暂停运行查看程序状态)有bug可能是没有装pyqt。

Jupyter

Anaconda自带,它比较特殊,是一个交互式的编辑器,感觉像是写作一样写代码,也是比较好用的。建议了解一下,喜不喜欢见仁见智了。

sublime

本身是个文本编辑器,写Python的话还需要配置一下,比较折腾,不像前面几个拿来就能用,因此不是很推荐。但是我个人很喜欢它那个性冷淡的风格。

4

基本程序思想

虽然我建议边练边学,但是基本的概念还是要有的,不然你第一个程序都写不出来。一些简单的算法伪代码要能看懂,起码知道for循环while循环if-else这些东西,常用的数据结构比如链表数组字典得知道。

不明白的话随便找个教程网站,看上一个小时就明白了。面向对象的思想明白最好,实在不明白也不耽误。

好啦,到这一步你就已经可以开始写你的第一个程序啦!不知道写什么的话有几个推荐:

会算法的话可以去刷LeetCode,但是我个人觉得对新人比较难,建议用别的语言刷过的人再去尝试。

不会算法可以去Hackrank,这个网站有一个30Days for Python一共一百来道题,刷个十天半个月也就入门了。

喜欢琢磨数学的话可以去ProjectEuler,提供几百道适合编程解决的数学题,做个三五十道就入门了应该。

如果遇到困难就百度谷歌,你掉进去的坑都是别人踩过不知道多少遍的,总能解决的。

到了这一步,也许你写个Python程序还是有些费劲,但是你真的已经会了。起码在想用Python完成一个任务的时候,语言不再是你的阻碍。

其实,对于什么都不懂,但是想进入IT行业的小白来说,自学不是个好选择。对于编程原理、项目实践,如果自己摸索,既浪费时间精力又容易体会到挫折感。

如果你下定决心想入行,那么有老师带领学习是找工作就业的最好途径。欢迎来达内学习Python人工智能课程。

如果你也想入门高薪Python人工智能行业,欢迎你来到达内学习。

现在人工智能爆发,Python是一门脚本语言,它更适合去做人工智能这个领域,在人工智能上使用Python比其他编程语言有更大的优势。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190408A08JCA00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券