最近发现只要上编程类网站,都会有Python的各种介绍,但是仔细发现很多文章最后都会有一个二维码,大家都懂的,卖课程的,Python这几年势头是很火,因为其数据分析方面的优势切合了大数据和人工智能方面的需求。
但是我这里要说的是:Python没有那么好找工作的,大家必须面对现实。
自己去招聘网站搜一下:
- 适合找工作的语言:JAVA,C#,PHP,C++,C
就这五种,没有多余的了。
Python虽然很火,但是找工作很难!很尴尬!
语法简单是个双刃剑
说这个也许有人不服,凭什么Python就写不了复杂逻辑?
豆瓣和知乎不是用Python写的吗?先声明,豆瓣的后端,已经废弃了绝大部分的Python代码,重新写过了。youtube也正在重写中,目前以Python为主的网站,就只有知乎这么个独苗。
为什么?不是因为Python的性能慢,而是因为Python的语法太悲剧了。
但是正是Python的语法简洁,在初学者看来是优点。因为初学者一般练手,都只写1000行以下的小玩意,Python的语法简直爽翻了,真没任何缺点,如果我没有c#和java之前,我肯定也选择Python。
但如果你真的尝试用Python去做一个系统时候就会发现弊端越来越明显,封装几十个类,去写个几千行以上的东西,自然就明白它的语法问题有多严重了,不只是难受,而是根本写不下去。
比如封装一个类似游戏的变量声明。
如果是JAVA,C#,C++(三门语言的语法几乎一样),大概是这个样子(伪代码):
无论你遇到任何一个对象,实参还是形参,你也能看明白它是个啥吧?
但如果用Python写,是啥样子呢?代码如下:
但如果你声明了50个变量之后呢?在写到第1000行代码的时候,你遇到了第38个变量,它是个啥? 是一张图片?一瓶药水?一个BOSS?或者仅仅是一个数字?如果你在几百行代码之后,一时脑残,写了一句b=药店老板,会怎么样?
JAVA,C#,C++的IDE都会立刻告诉你,b是一个武器类型,无法赋值为药店老板。
而Python呢,不会报错,但当你写了几万行代码,游戏完成之后,你会发现你的背包里面,有一个药店老板,这是什么情况?错误在第几行呢?IDE会告诉你,没有错误。b可以是任何值,当然可以是药店老板了,自己一行一行的找吧。
所有的动态语言,都是初学的时候觉得简单省事,但代码写得越复杂,逻辑就越乱。
- 500行以内,绝对是最佳语言。
- 500行以上,效率就会被JAVA,C#反超。
- 1000行,还能靠加注释勉强撑住。
- 2000行,就会发现注释比代码还多。偷懒少写几句注释,等维护的时候,立刻就会各种BUG满天飞。
但IDE却一直告诉你,代码没毛病,测试人员哭死。
确实有人可以用Python撸几万行代码不出错,我只想说那不是一般人能办到的,我和你都是普通人,记忆力没有那么好,所以新手朋友想入行编程这块,Python作为一个辅助技能就好,否则学了真心找不到工作。