1. 简便,直观且通俗易懂,新手福音
跟其他语言比较,Python有着简便、直观且通俗易懂的优势。我们请出了以效率著称的C语言,和在业务层面有着优秀战绩的Java语言,让他们和Python做对比。我们分别使用3种语言写一个HelloWorld,看谁对新手更友好。
首先是C语言:
嗯,代码量还行,不算{}一共有三行代码。但是,int,main,return这都是什么跟什么?对于新手来说,一开始只能强行记忆了,没有任何理解的成分,我们只需要明白printf()使用来输出的,其他的即使解释了,也跟天书没什么区别。接下来该Java语言上场了,同样还是输出HelloWorld的例子:
貌似比C语言的更复杂了。由于Java语言面向对象的特性,所以任何代码都必须要放在class里面,所以Java的固定代码比较多。同样对于新手来说,Java语言也是从记忆到理解的过程,也只能强行记忆。
C和Java语言看上去对新手不太友好,那么Python语言会有什么表现呢?相同的例子,会不会有不一样的结果呢?
就一句话,想输出helloworld,一行print语句就够了。没有C和Java那么多格式和需要额外记忆的东西。所以谁是新手福利,谁是菜鸟杀手呢?
2.编译 VS 解释
当然,仅仅是一个Hello World的话,C和Java的代码也多不了几行。可是不要忘了,C和Java都是编译型语言,代码运行前都必须先经过编译的环节。
什么是编译呢?原来,除了艰深难懂的机器语言,我们写下的程序计算机是无法直接读取的。而是要经过“翻译”的过程,计算机才能“理解”要执行的指令。充当“翻译官”的是编译器的程序。当高级语言源程序进入计算机,被编译器翻译成目标程序,以完成源码要处理的运算并取得结果。
对于C语言来说,在不同的操作系统上使用什么样的编译器,也是一个需要斟酌的问题。一旦代码被带到新的机器,运行环境和之前不同,还需要重新编译。有时候不同的计算机的编译环境有所区别,我们还得写文件修改源代码来满足编译环境的需求。
而Python是一门解释型语言。充当编程语言与机器语言的翻译官是解释器,解释器不会一次把整个程序翻译出来,而是每翻译一行程序叙述就立刻运行,然后再翻译下一行再运行,不产生目标程序。解释器就像是同声口译,编程语言每说完一句话,解释器立即翻译给计算机,计算机立即执行程序。
我们可以这么理解,Python语言写的程序是不需要装编译器来编译程序的,就可以直接运行。而C和Java则需要安装编译器,而且如果版本和环境有偏差的话,可能还需要修改源文件。所以对于新手来讲,使用Python这样的解释性语言更直观方便,而且也更省事。