Stubborn 发表于 2020-6-3 00:28:37

致初学者:如何学好Python这门编程语言?

本帖最后由 Stubborn 于 2020-6-3 01:00 编辑

对于很多Python这门编程语言的初学者,往往会面临以下问题:转载自魔力Python


[*]Python2和Python3我该学习哪一个?
[*]是否要安装Linux系统学习Python?
[*]Python3有各种版本我该安装哪一个?
[*]那么多的图书、视频和电子教程我该选择哪一个?
[*]各种开发工具我该使用哪一个?
[*]我该怎么学习这门编程语言?



一、Python2和Python3如何选择?

因为Python3不兼容Python2,所以导致很多人选择困难。

很多人从网上搜索过这个问题的答案,往往看到的是Python3还没有广泛应用,大部分第三方库还得没有支持Python3的版本。

但是,请注意,网上搜索到的这些信息往往没有时效性。

很多网站的内容是伪原创或者采集而来,可能看上去发布日期很近,但是内容却是几年前的内容。

目前,Python3已经应用很广泛,绝大部分第三方库都已经支持Python3。

选择Python3是最正确的选择。



二、是否要安装Linux系统学习Python?

这个问题的答案不是一个确切的答案。

如果单纯从学习来说,这不是必须的。

Python本身就是跨平台的语言,使用哪种系统学习都是可以的。

不过,需要注意的是不同的系统中,可能存在一些差别,例如Linux中支持fork()函数,而Windows则没有这个函数。

这些差别一般在学习过程中都可以了解到,当遇到这样的差别可以先略过,并不阻碍学习进程。

当然,在实际应用中,我们对各类系统的了解是必须的。

因为,往往项目的生产环境会使用Linux系统。

我们可以一边使用Windows系统学习,一边将熟悉其他类型的系统也当做学习的一部分。


三、Python3有各种版本我该安装哪一个?

Python3的各种版本都是基于Python3的维护版本,安装高版本基本不会出现兼容性问题。

并且,在高版本中,往往会有一些新的内容出现,值得我们了解学习,例如Python3.6版出现的“f-string”。

所以,从学习的角度来说,安装最新的正式版是最好的选择。


四、那么多的图书、视频和电子教程我该选择哪一个?

不要问,要问反手回答:小甲鱼


五、各种开发工具我该使用哪一个?

开发工具也就是常说的开发环境。

在问这个问题时,往往会看到各种各样的答案。

特别是有些人推荐用记事本……

我就呵呵了。

Python这门语言核心理念就是能够简单灵活快捷的完成开发目标。

不管是工作还是学习,都应该以效率为主。

虽然,了解多种开发工具没有什么不好,但是选择一个具有低难度、高效率的工具是必须的。

现在网络这么发达,硬件环境也非常优良,选择功能丰富易用的工具才是最好的选择。

我们没有必要为了装*,去选择一个轻量级的开发工具去虐待自己,给自己增加学习和工作的难度。

特别是在学习中,我们的重点是学习编程语言的语法、规范,培养良好的编程习惯,提升编程思想和技巧,而不是把精力分散出去适应一个对初学者不友好的工具。

不用担心某一天你在编程的时候找不到自己使用的工具,这种情况是极少会出现的。

所以,选择一款优秀的带有丰富功能的工具是初学者的首选。

在这里,我的推荐是PyCharm的最新版(别问我最新版是哪一版,就是你看到这篇文章时的最新版)。

当然,我并不排斥一个开发人员掌握多种开发工具的使用,我想,当我们学习编程到一个阶段,对编程的概念都有了基本的了解,并且有了良好的编程习惯和学习方法,这个时候再去了解其他开发工具也为时不晚,并且适应这些开发工具的难度也会大大降低。


六、我该怎么学习这门编程语言?


1、学会使用官方文档

当你安装完Python3,在安装目录中已经自带了与安装版本相对应的官方文档,以Windows系统为例,它在“Python36\Doc\”目录下,或者在【开始】-【Python 3.x】的选项中也能看到。

这份官方文档,是需要常备的学习参考资料。

在学习中遇到的一些问题,都可以到这份文档中通过搜索寻找答案。

2、借助翻译工具

编程语言对大多数开发人员来说,英文是一个障碍。

如果英文不好,大多数最新的技术文档无法读懂。

但是,即便无法读懂,也要去读,借助翻译工具,养成阅读英文文档的的习惯。

随着阅读次数的积累,慢慢的我们就能够提升英文的阅读能力。

这就好像小孩子学说话,不停的努力与重复才能够达成目标。

3、善用搜索引擎

在学习过程中,我们会经常遇到一些问题,需要解决。

你的第一个解决途径不是到处去问,到处去问只会养成你的惰性和依赖性。

而编程人员解决问题需要培养的是独立性。

实际上,网上有海量资源能够帮助我们解决问题。

但你不一定会搜索。

因为很多人喜欢搜热门关键词,例如查询Python资料,就喜欢输入“Python教程”或“Python入门”这些关键词。

看看搜索结果吧!

都是一些老旧的Python资料。

为什么搜索引擎不会将最新的资料显示出来呢?

因为新的资料本身有一个被收录和提升搜索权重的过程。

就好像我的Python3萌新入门笔记,虽然是很新的学习资料,也被搜索引擎收录了,但是你查询“Python3 笔记”这样的关键词,依然很难查到。

而查询资料的全名则会有非常好的效果。

所以,当你在搜索引擎查询资料的时候,不要用非常简洁的关键词去查询,而是用长尾关键词(也就是描述更详细的关键词)去查询,因为一般新的资料都会对长尾关键词进行优化(因为热词实在很难排名靠前),达到能够被用户搜索到的目的。

4、理解概念

编程中有很多概念,变量、函数、对象、方法、类、进程、线程……

这些基本的概念,必须要理解。

实际上这些概念,也只是名称的字面难以理解,如果加以解释(当然要解释的通俗易懂)都很容易理解。

理解这些概念,是我们提升编程思想的最佳途径。

如果不理解概念,即便能够跟随着资料将代码编写出来,等到自己真正进行开发时仍然是一头雾水。

所以,在学习中真正的理解一个知识点是非常重要的。

5、慢下来

不要贪图快,快会容易错过细节。

在学习当中,一定要仔细全面的追求质量而不是速度。

因为在初学时期追求速度而忽略质量,到学习后期就会暴露出各种各样的问题。

所以扎实的、有条不紊的把每一个基础知识 点掌握之后,在进行下一个知识点的学习,才是最有效率的学习途径。

6、穷其理

穷其理的意思就是追究细节。

任何一份资料的作者,视角都是不同的。

所以,不同的资料作者所给出的学习资料也会各有侧重,或者带有作者个人的喜好。

并不是作者不负责任,不能够把资料作的完整详细,而是扩展开来往往会变成非常复杂的资料结构。例如,web开发内容中会涉及HTML、JS等知识,如果把这些知识也详细的展现在资料中,那么这份资料就没有办法再去学习。

所以,当我们在学习过程中,发现资料中一些模糊或者生僻的内容,不要放过,而是至少做一下了解。

虽然,不可能太过深入,但是基本内容要做一个大概的了解。

这样是有好处的,它会让我们变得更博学。

如果将来遇到相关的问题,我们就能够快速的找出解决方案。

7、养成习惯

学习编程是一个持续的过程。

每天编写代码是一个程序开发人员应该养成的习惯。

编程能力有不进则退的特点。

如果中断时间过长,就会导致能力的退化,甚至遗忘学过的知识。

所以,即便没有编写代码的环境,也要尽量通过网络学习一些相关的技术资料,保持持续的学习状态。

最后,我还要说一点:勇于放弃!

不是所有人都适合编程开发。

每个人都有自己的擅长,上学时有人严重偏科就是一个典型的例子。

就像电影《无问西东》中的吴岭澜,一个英文和国文几乎满分,物理却拿了个不及格的文科学霸,在大环境影响下选择了自己并不擅长的实科(理科),从而面对转系的抉择。

最终,在梅贻琦校长和泰戈尔演讲的引导下,重新审视自己,认清真实,做了转到文科的正确决定。

所以,如果你并不擅长编程开发,还是尽早放弃,方向错误的盲目努力并不会有好的结果。

另外,我觉得编程人员还要具备以下的能力:

1、需要具备长期持续学习的能力。

因为技术总是在革新,并且编程人员往往需要掌握多种编程语言,能够长期坚持学习提升自己是不可缺少的能力。

2、需要具备高效提问的能力。

可能有人认为,提问谁不会?

有些人就是不会提问,当出现了问题求助别人的时候,都不知道把自己的代码和错误内容截图,或者只截图某个部分,让别人无从判断问题所在。这样的提问,往往需要耗费太多的精力在沟通上,而不是解决问题上,也就难怪被别人无视。

3、需要具备思考与逻辑分析能力。

因为代码里面充满逻辑,特别是出现错误时,更需要去思考,推理出问题的关键所在。

并且,当出现问题时,我们所能查到的资料往往不能直接解决问题,或者只是解决问题的部分线索。再或者是其他编程语言相似问题的解决方案,这时都需要我们能够结合已有资料去分析。

4、需要具备独立解决问题的能力。

因为在工作中开发进度往往是相当紧张的,当程序出现问题,必须能够快速独立解决,而不是等别人来提供帮助。

5、需要具备优秀的阅读理解能力。

因为不管是文档还是代码,都需要编程人员去阅读理解,不管是用于解决问题,还是接手了别人移交的工作,都需要这份能力。

特别是一些英文文档,对于英文不好的编程人员来说,更需要能够在翻译软件晦涩的翻译结果上,得到正确有用的信息。

最后,再次强调,把时间和精力,放在自己擅长的方向,去坚持与努力,如果不知道自己擅长什么,就尽快找到它。

有人可能会反对:不是说遇到困难不能退缩才能成功吗?

我想说:遇到困难勇于坚持是建立在自我了解的基础之上,豆腐是用来吃的,砖头是用来砌墙的,作为一块豆腐不要有砖头的理想,会碎的!


6、楼主额外插一句。

兴趣是你最好的老师,坚持是你源源不断的动力


另外分享一点电子书,如果小甲鱼的课程还没有学完,就还不要贪多下载了,如果学习完了,可以看下Python Cookbook 和Python3 核心编程

下载声明:所有资源均来自网络,不得用于商业用途,如有【版权】或【链接失效】等问题,请留言告知!本资料版权归原作者及版权商所有,如果你喜欢,请支持购买正版。仅限个人测试学习之用,不得用于商业用途,请在下载后24小时内删除。






**** Hidden Message *****

_2_ 发表于 2020-6-3 06:32:42

WOW,支持一下

永恒的蓝色梦想 发表于 2020-6-3 07:10:53

3L~

hrp 发表于 2020-6-3 07:13:46

支持一下

壹嘉一 发表于 2020-6-3 07:34:26

支持支持,希望能一直学下去

小甲鱼的铁粉 发表于 2020-6-3 08:10:38

66666

Twilight6 发表于 2020-6-3 08:18:53

可以可以 {:10_297:}

轩慕云 发表于 2020-6-3 08:39:27

支持一下

xwj6613001 发表于 2020-6-3 08:57:05

向你学习

littlev 发表于 2020-6-3 09:25:37

大爱!

wjlwdx123 发表于 2020-6-3 11:06:56

谢谢大佬~~

xspython 发表于 2020-6-3 14:28:22

{:5_95:}

听风夜雨 发表于 2020-6-3 20:36:20

{:5_109:}

Leledepy 发表于 2020-6-3 22:59:41

搜索的介绍确实学到了

z0lmxt 发表于 2020-6-4 10:50:13

支持一个{:10_275:}

a103319 发表于 2020-6-4 11:23:04

收藏

均昊山 发表于 2020-6-4 11:57:03

为什么要放弃?,当初为什么想学? 有爱好和兴趣还鼓动别人放弃?

1q2w3easxz 发表于 2020-6-4 15:33:57

腻害

沐沐范 发表于 2020-6-4 17:19:13

谢谢楼主

依夏 发表于 2020-6-4 21:43:01

666
页: [1] 2 3 4 5 6 7 8
查看完整版本: 致初学者:如何学好Python这门编程语言?