坚决不用python这种垃圾(python不用编译器)

Python 在编程语言中是什么地位?为什么很多大学不教 Python?

python的地位很高,目前是世界第5大编程语言。。但我觉得大学不教python,其实是正确的。

Python在诞生之初,只是用来在Linux上给Perl和shell做衔接用的“胶水”,而今天已经成为了主流的编程语言,能获得今天的地位,当然具备诸多优势。。。比如数学运算相关的各种库,爬虫,等等。。。但这都不是导致Python流行的最根本原因。

有没有比Python运算更强的语言?多得是

有没有比Python爬虫效率更高的语言?也不少

所以其实平日里随口道来的种种优势,并不是不可替代的。。这些优势,很多语言都具备。就比如perl,erlang,Julia等语言,其实用来做运算或爬虫比Python更强,但为什么这些语言却流行不起来?

说到底,Python成功的秘诀只有一条,其实就是在功能基本够用的前提下,比其他语言简单。而比Python简单的语言,功能又不够全面,比如Lua,Javascript,Ruby这些语言比Python更简单,但往往只适合一两个领域的工作,而无法面面俱到。

Python可以提供的这些功能,对于非专业程序员来讲,已经显得非常强大了。。但对于专业程序员来说,Python最大的作用,其实也只是用来“偷懒”而已。因为相比JAVA或C#这种工业级的编程语言来讲,Python除了入门简单之外,并无任何优势可言。而Python的动态语言特性、不利于维护等缺点,成为了限制它迈向深层开发的重大缺陷。

而如果熟练掌握JAVA或C#中的任何一门,想利用闲暇之余学习一下Python,看几个案例便可以入门,几乎不需要专门学习。

如果你并不以成为专业程序员做为目标,那么以Python为主,是可以的。但若想靠编程养家糊口,静态语言才是重中之重。

但如果是计算机专业的话,仅仅学Python,似乎就有点对不起“科班出身”的称号了。。。。学生们花着昂贵的学费,消耗四年光阴,却只学个Python,岂不是误人子弟?

就像你若报考摄影专业,老师应该教你使用单反,而不是教你使用手机摄像头。

坚决不用python这种垃圾(python不用编译器)  第1张

为什么从事大数据行业,一定要学习Python?

Python编程语言由于自身具有的“清晰”、“简略”等特点而受到众多使用Python编程语言的IT从业者喜爱。而且,对于初学者来说,比起其他编程语言,Python 更容易上手。加上很多企业都使用Python编程语言,促进了Python程序员的市场需求量增加

首先,我们普及一下编程语言的基础知识。用任何编程语言来开发程序,都是为了让计算机干活,比如下载一个MP3,编写一个文档等,而计算机干活的CPU只认识机器指令,所以,尽管不同的编程语言差异极大,最后都得“翻译”成CPU可以执行的机器指令。而不同的编程语言,干同一个活,编写的代码量,差距也很大。

比如,完成同一个任务,C语言要写1000行代码,Java只需要写100行,而Python可能只要20行。

所以Python是一种相当高级的语言。

信息学竞赛用C++不用Python的原因是什么?

我个人认为原因主要有两点,一是因为信息学竞赛主要考验的是数据结构和程序设计;二是Python过于简单,并且需要搭建环境,执行效率也慢,不如C++好。

先来说第一点。想要知道信息学竞赛为什么用C++而不用Python,首先要知道,信息学竞赛本身就是考验你对数据结构的掌握以及对程序设计的理解。这就意味着,你是不需要过多的熟悉编译软件的,只要注重你软件的执行效率就行了。怎么说呢,其实C++并不难,只是相较于Python这种小学生型编译软件难而已。Python自带太多库了,而且很多程序设计的过程都简化了,压根无法体现出你对程序设计的理解,而且因为没有内存操作这方面的功能,对你的数据结构考验也有所限制,不能完全发挥出实力,所以才会用C++,而不是Python。

再来说第二点,在我这个职业码农眼里。Python真的和垃圾差不多,Python只适合在大数据、人工智能等这些领域使用,因为这些领域主要是用编译软件来跑那些算法程序的,说白了就是科研人员使用的,对于科研人员来说,这种工具越简单肯定越好了。除吃之外,Python还要搭建环境,对于你来说简单,但对于整个比赛平台来说呢?最重要的是执行效率,也许在你个人看来,两者执行效率差不多,但到总控制端那里就不一样了,Python写的程序会出现各种问题,这也就是为什么很多追求执行效率的软件,不是C语言写的,就是C++写的的原因。

总的来说,信息学竞赛不用Python的主要原因是Python对于比赛人员的编程技能要求太低,同时执行代码效率太慢,很可能导致比赛途中出现各种问题。

Python是什么?

也许最初设计Python这种语言的人并没有想到今天Python会在工业和科研上获得如此广泛的使用。著名的自由软件作者Eric Raymond在他的文章《如何成为一名黑客》中,将Python列为黑客应当学习的四种编程语言之一,并建议人们从Python开始学习编程。这的确是一个中肯的建议,对于那些从来没有学习过编程或者并非计算机专业的编程学习者而言,Python是最好的选择之一。Python第一次学习Python,我只用了不到二十分钟的时间,站在书店里把一本教初学编程的人学习Python的书翻了一遍。也是从那时起,我开始被这种神奇的语言吸引。Python可以用来开发symbian上的东西。易用与速度的完美结合Python是一种用起来很方便的语言,很多初学Java的人都会被Java的CLASSPATH搞得晕头转向,花上半天的时间才搞明白原来是CLASSPATH搞错了自己的Hello World才没法运行。用Python就不会有这种问题,只要装上就能直接用。Python是一种脚本语言,写好了就可以直接运行,省去了编译链接的麻烦,对于需要多动手实践的初学者而言,也就是少了出错的机会。而且Python还有一种交互的方式,如果是一段简单的小程序,连编辑器都可以省了,直接敲进去就能运行。Python是一种清晰的语言,用缩进来表示程序的嵌套关系可谓是一种创举,把过去软性的编程风格升级为硬性的语法规定。再不需要在不同的风格间选择、再不需要为不同的风格争执。与Perl不同,Python中没有各种隐晦的缩写,不需要去强记各种奇怪的符号的含义。Python写的程序很容易懂,这是不少人的共识。Python是一种面向对象的语言,但它的面向对象却不象C++那样强调概念,而是更注重实用。不是为了体现对概念的完整支持而把语言搞得很复杂,而是用最简单的方法让编程者能够享受到面向对象带来的好处,这正是Python能像Java、C#那样吸引众多支持者的原因之一。Python是一种功能丰富的语言,它拥有一个强大的基本类库和数量众多的第三方扩展,使得Python程序员无需去羡慕Java的JDK。Python为程序员提供了丰富的基本功能使得人们写程序时用不着一切最底层做起。说到这里,人们通常会用一种担心:脚本语言通常很慢。脚本语言从运行的速度讲的确会慢一些,但Python的速度却比人们想象得快很多。虽然Python是一种脚本语言,但实际上也可以对它进行编译,就象编译Java程序一样将Python程序编译为一种特殊的ByteCode,在程序运行时,执行的是ByteCode,省去了对程序文本的分析解释,速度自然提升很多。在用Java编程是,人们崇尚一种Pure Java的方式,除了虚拟机一切东西都用Java编写,无论是基本的数据结构还是图形界面,而Pure Java的SWING,却成为无数Java应用开发者的噩梦。Python崇尚的是实用,它的整体环境是用C来编写的,很多基本的功能和扩展的模块都是用C/C++来编写的,当执行这一部分代码时,它的速度就是C的速度。用Python编写的普通桌面程序,其启动运行速度与用C写的程序差别不大。除了这些,通过一些第三方软件包,用Python编写的源代码还可以以类似JIT的方式运行,而这可以大大提高Python代码的运行速度,针对不同类型的代码,会有2倍至100倍不等的速度提升。Python是我见到过的语言中,在易用性和速度上结合的最完美的一个,通过丧失一点点经常可以忽略不计的运行速度从而获得更高的编程效率,这就是我选择Python的原因。把精力放在要解决的问题上选择一种合适的语言,才能让你把有限的精力放到最需要解决的问题上。不同的语言有不同的作用,C和汇编适合编写系统软件,如果用它们来编写企业应用,恐怕没几个人能得心应手。我以前就碰到一个用汇编写数据库程序的哥,虽然最基本的功能完成了,但要增加个报表预览什么的,他就没法应付了。聪明的程序员是用合适的工具去完成任务,想找一把万能钥匙是不太可能的。Python的自动的垃圾回收机制是高级的编程语言的一种基本特性,用拥有这一功能的语言编程,程序员们通常不用去关心内存泄漏的问题,而当我们用C/C++写程序时,这却是最重要的需要认真考虑却又很容易出错的问题之一。数据结构是程序构成的重要部分,链表、树、图这些在用C编程时需要仔细表达的问题在Python中简单了很多。在Python中,最基本的数据结构就是数组、序列和哈希表,用它们想要表达各种常见的数据结构是非常容易的。没了定义指针、分配内存的任务,编程变得有趣了。CORBA是一种高级的软件体系结构,它是语言无关平台无关的。C++、Java等语言都有CORBA绑定,但与它们相比,Python的CORBA绑定却容易很多,因为在程序员看来,一个CORBA的类和Python的类用起来以及实现起来并没有什么差别。没了复杂体系结构的困扰,用Python编写CORBA程序也变得容易了。好钢要用在刀刃上,要想用有限的时间完成尽量多的任务,就要把各种无关的问题抛弃,而Python恰恰提供了这种方法。跨平台又易扩展随着Linux的不断成熟,越来越多的人转到Linux平台上工作,软件的开发者自然就希望自己编写的软件可以在所有平台下运行。Java一次编写处处运行的口号使它成为跨平台的开发工具的典范,但其运行速度却不被人们看好。实际上,几乎所有的著名脚本语言都是跨平台的,Python也不例外。Python不仅支持各种Linux/Unix系统,还支持Windows,甚至在Palm上都可以运行Python的程序。一个程序想要跨平台工作,不仅仅需要语言本身能够做到在平台之间兼容,在图形化界面的时代,还需要有能跨平台工作的Widget。Python不仅支持老一些的TK,还支持新的GTK+、QT以及wxWidget,而这些Widgets都可以在多个平台上工作。通过它们,程序员就可以编写出漂亮的跨平台GUI程序。Python通常是运行在native代码与脚本代码之间,程序员可以用C/C++为Python编写各种各样的模块,这不仅可以让程序员以Python的方式使用系统的各种服务及用C/C++编写的优秀函数库和类库,还可以大幅度提高Python程序的速度。用C/C++编写Python的模块并不复杂,而且为了简化这一工作,人们还制作了不少工具用来协助这一工作。正是因为如此,现在各种常用的函数库和类库都有Python语言的绑定,用Python可以做到的事情越来越多了。万能钥匙?Python功能强大,但它却不是万能的。如果你要编写操作系统或驱动程序,很显然,Python是做不到的。要写软件,没有哪个工具是万能的,现在之所以有那么多的编程语言,就是因为不同的语言适合做不同的事情。因此,选择适合自己的语言工具是最重要的。

以上内容为新媒号(sinv.com.cn)为大家提供!新媒号,坚持更新大家所需的互联网后端知识。希望您喜欢!

版权申明:新媒号所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,不声明或保证其内容的正确性,如发现本站有涉嫌抄袭侵权/违法违规的内容。请发送邮件至 k2#88.com(替换@) 举报,一经查实,本站将立刻删除。

(0)
上一篇 2023-09-23 13:37
下一篇 2023-09-23 13:37

相关推荐

发表回复

登录后才能评论