程序员学Python,怎么样才能学好python编程

  程序员学Python,怎么样才能学好python编程

  最近和朋友聊天的时候,朋友问我这个问题:你报培训班学python有用吗?都说程序员虽然工资高,但是工作辛苦,每天加班,会遇到中年危机。不像律师和会计师,年纪越大,赚的钱越多。我听完回答,我为什么要成为程序员?

  据我所知,在培训班学习python的主要原因是完全没有编程基础。听各种培训班,觉得python入门容易,以后收入也不低,没有编程基础的电源。

  但是,从我一年多的学习来看,我可以负责任的告诉你,

  想做程序员,最好不要学python。如果你想学一门能在以后工作中用到的计算机技术,那么python是你最好的选择,相比Excel。为什么这么说?我从以下两个方面给大家解释一下。

  Python很好学,但只是一种促销手段。

  为什么文力源在选择编程语言的时候往往会学习python?我想他们大多听说过python是编程中最容易学的语言。这就好比很多人觉得python很好学,甚至我的大学老师一提到python就说很容易,让我们有时间就去学。

  然而,这一年学下来,我却不这么认为了。Python易学,就是说它的代码编写容易掌握,其他语言需要十几行代码才能实现功能。python可能只需要几行,量少更容易记忆和掌握,但是我们都知道大部分程序员的看家本领是什么?其实就是CV解。用这种方法,代码量有什么意义?更何况代码量增加到一定程度,只是增加了你的工作量,并没有增加难度。

  但是背后的原理和对语言的深刻理解,无论是python还是Java,还是C,对于没有系统学习过的人来说都是很难的。换句话说,只要你能理解这些东西,任何语言都可以轻松掌握,这也是为什么C语言是大学计算机专业的必修课,因为它是所有高级语言中最接近底层的,更能解释计算机程序的运行原理。

  这是你想成为一个优秀的程序员必须掌握的知识,而这个不会在培训班上教给所有人,因为他们知道,即使他们告诉你,你也不一定能理解,所以他们经常告诉你,你以后会遇到这样的事情。这对于不想做程序员的人来说完全够用,但是对于一个程序员来说就不够用了。因为你以后要靠代码生活,所以一定要知道它是什么,为什么。而这个知道为什么的过程,对于零基础的人来说,会是极其痛苦的。至少在明白了背后的原理后,我掉了不少头发。

  另外,

  你觉得掌握python就能成为程序员吗?这显然是错误的。

  以python的django框架为例。学习django不仅需要你掌握python的语法,还需要你懂得数据库、Git、简单JS、HTML、CSS基础的使用。当然,最重要的是掌握Linux的使用。只有掌握了这些,你才有资格申请python后端开发者。

  而这些内容怎么可能在几个月内学会?那些补习班所谓的半年高薪只是吸引你学习的噱头,

  任何一门语言,没有几年的积累,怎么可能完全掌握?

  所以不要以为python很容易。python简单易学只是一个噱头。如果想成为一名优秀的程序员,python和其他语言一样,需要时间的磨练。而有了这段时间,为什么不学习C和Java呢?至少目前来看,前者是语言的常青树,后者是目前需求最大的语言之一,工作岗位比python多很多,所以你很想做程序员。目前建议先从C或者java入手。

  而且掌握C或者java之后学习python也不会花太多时间。

  Python就像二十年前的Word和Excel。

  众所周知,二十年前,电脑还没有进入千家万户的时候,很少有人会使用Word、Excel等办公软件。但是现在,几乎大部分工作对这些都有一定的要求。原因是这些软件简单、方便、实用。Python也有这些条件。

  可能有人会问,你刚才不是说python不好学吗?是的,python不好学,但是对于想做程序员的人来说,因为他们不仅要了解python的工作原理,还要了解其他关于计算机的知识。但是对于一般人来说,虽然我知道这些东西是怎么运作的,但是我知道我这样做是可以达到某种目的的。最重要的是,我不需要关心代码的效率和耦合性。

  至于前者,大家很容易理解。我用Excel统计数据。你需要知道为什么我能用SUM函数求和吗?用PS修图需要知道套索工具抠图的原理吗?显然,我们不需要它。我们只需要知道如何使用它,也就是只要知道它是什么,不需要知道为什么。

  python也是如此。之前有人说过,python因为简洁的语法结构,可以很快上手。但是,这个介绍对我们来说用处不大,因为即使入门,也很难写出像样的代码。不过,没关系,你写不出来,别人可以。python有一个极其庞大的第三方库,封装了各种代码,可以实现各种功能。我们可以直接拿过来用,不用自己写。当我们使用这些代码时,我们不需要知道这些代码是如何实现这个功能的。

  以爬虫为例,请求库是爬虫常用的。对于以后想从事爬虫的人来说,请求库只是要学习的一小部分,但是对于我们来说,请求库几乎可以满足个人爬虫的所有需求。这段时间我在家的时候,从网上爬了十几本小说,总代码只有50行。我不需要考虑抓取效率,被攻击等等,也不会因为这个。

  当然,你要把一些库学到极致并不容易,这和我们把word、Excel用到极致是一样的。但是,如果我们掌握了它的基础,我们就可以解决自己的很多问题。是不是很美?

  我想大家或多或少都听说过代码的效率和耦合性。python虽然语法简单,但是因为是面向对象的,所以效率很差。什么是好的代码?高耦合低内聚。这都是针对程序员的,普通人根本没必要达到这个要求。

  以继续爬虫为例。我们都知道爬虫的两个关键点是可靠的数据获取和高效的数据获取。为了高效获取数据,减少爬虫的时间,线程、分布等应运而生。

  但是这和我们有什么关系呢?只要注意前者,就能保证获取数据,因为个人爬虫一般不会抓取的数据不会太大。假设你是股民,再过一个月上市公司就要发2019年的财务报表了。你要批量下载这些报表,因为你要分析数据。假设一份报告的pdf文件是3M,国内目前有3500多家上市公司,你最多可以爬10G的数据。这看起来很多,但与那些爬虫公司以T为单位爬行的数据相比,这只是九根牛一毛。

  所以我们不必在意程序的运行效率,因为等待几分钟或者几个小时对我们来说是可以接受的。所以我们不必掌握python相关的一些知识,比如线程、分布等。

  同样,由于我们对程序的运行效率没有要求,所以对代码的编写格式也没有要求,因为我们写的代码往往是一次性的,不是给别人看的。最重要的是代码基本写的很差,但这又有什么关系呢?不管怎样,我是靠代码生活的吗?只要能达到我的目的,谁在乎代码烂不烂?

  总而言之,学了python之后,上限虽然猜不出来,但下限一定不会很低。就像Excel一样,真正用得好的人要花很多时间。但是,只要了解了基础,基本就够了。如果遇到一些我们不会的操作,难道就不能百度一下吗?python不也一样吗?如果遇到一些意想不到的错误,直接为百度编程基本可以解决问题,虽然你不知道为什么。

  好了,说了这么多,我想大家或多或少都明白了。

  如果想做程序员,最好不要入门python,因为简单的入门往往会导致痛苦的深化。

  如果要选择一门语言作为提升素质的技术,那么它就是python。

  如果你已经工作了,我个人的建议是掌握python语法后直接学习数据处理与分析,因为高效利用数据是几乎每个企业关注的重点之一。当然,这并不是让你发展成机器学习和人工智能,但是掌握一些基本的数据处理和分析,足以让你比别人更快更好地完成一些简单复杂的信息处理工作,至少比用Excel进行数据处理要快得多,会让你更快脱颖而出。

  如果你还在上大学,那么我建议你学习python语法。可以先学习django或flask等web框架,再学习数据分析。因为大学的时间很多,而且自己写网站也是一件值得骄傲的事情。如果你的网站有好的创意,也许会有人去访问,然后开发?毕竟还是有梦想的。万一实现了呢?最重要的是毕业后实在找不到工作,也可以靠这个在小公司救急一段时间。

  最后,关于python的两个建议。

  一:爬行动物写得好,但在监狱里不一定能吃饱饭。可能是满清宴吧!因为爬虫不等于黑客。

  二:人工智能不是你想学就能学会的。想学的话,首先要确定自己能以高数过得去。据我所知,培训机构的机器学习班几乎都是研究生。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: