原因一、Python是一种 面向对象的语言
谁说程序员找不着对象?在Python里分分钟就可以写个新对象,不喜欢的话甚至还能删掉呢。编程语言两个非常重要的概念,即面向对象与面向过程。举个栗子,当你想吃火锅了,你有两个方式:
1、自己出门去菜市场,讲价,买粉丝,买肉,买火锅底料,买各种肉丸子,买各种配菜,回家洗菜,起锅,煮菜,吃完后洗碗,拖地,收拾厨房。
2、打个电话叫一份海底捞的外卖,完事儿了。
第一种方式是面向过程,第二种是面向对象。面向过程是将过程中每一步都流程化的列举出来,一一解决,直到最后推导出结果;而面向对象,则是直接对结果说话。那面向对象的好处是什么呢?比如你突然不想吃火锅了,想改吃宫保鸡丁,第一种方式中,你需要重新出门买菜、讲价…而第二种方式,你只需要重新手机点个单就好,对于编程来说,大大降低了维护成本,提高了维护性。
原因二、代码量级小
很多人可能都经历过这样的过程,被兴趣驱使着打开某种编程语言的介绍,然后被密密麻麻的复杂代码唤醒强烈的求生欲关闭页面。代码是编程语言的载体,越是复杂的功能往往需要的代码量就越大,而Python是目前所有的编程语言中,代码量级最小的一种。在这里,我们用所有编程入门都会接触到的一个案例——输出“hello world”来说明。
三巨头之JAVA:
class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
三巨头之C语言:
#include int main(void) {
printf("Hello, World!\n");
return 0;
三巨头之C++:
#include using namespace std;
int main() {
cout << "Hello, World!" << endl>return 0;
}
而我们的萌新Python同学:
print('hello world')
没了……
是不是有种人狠话不多的感觉?通常来说,Python的代码量只有C的1/3左右,这对刚刚开始接触学习编程入门的朋友来说是极为友好的一件事。
原因三:应用广泛
感觉这么说不够严谨,应该说“应用极为广泛”才对得起这门明星语言。它可以用来管理SQL的数据库吗?可以。可以用来管理云端或者本地基础设置吗?OK的。可以用来开发网站吗?问题不大。可以用来构建一个小工具吗?必须的。可以用来…吗?别问,问就是可以做到。YouTube、Instagram、豆瓣、知乎、果壳等都是用python写的,意不意外?惊不惊喜?
除了C端应用之外,Python还有着最为成熟的程序包资源库之一PyPI,这个资源库包含着超过85000个脚本资源与模块,上手就能用,同时python具有独特的开源且跨平台特性,不管是windows、macOS还是Linux,Python都可以轻松运行,配置环境过程也无比简单。
另外不得不说的是,Python天生就是幸运儿,它的出现占据了天时地利人和三大要素。百度指数于2012年收录了python的相关指数,那几年最火的是啥?是云计算,而最火的云计算平台之一OPENSTACK就是基于python开发的,这是天时;而随后的两年正是新创业喊得最响亮的时期,遍地都是新兴创业者,特别是基于互联网开始迅速发展而催生的大量开发性岗位,Python由于开发速度极快,成为了当时最适合做短周期开发项目的黄金语言,它适合快速搭建原型的特点使它赶上了创业大潮最好红利,遍地开花(六什么六,坐下),这是地利;这两年则是人工智能高速发展阶段,python则是公认的人工智能和机器学习语言的首选语言。需要特别提到的是python极其适合开发爬虫类应用。爬虫是多任务处理场景,经常需要多线程进行任务处理,而Python就具有极为成熟的多线程模型可供使用,同时还有GAE(Google 管理的数据中心中用于WEB应用程序的开发和托管的平台)的支持。要知道GAE最开始支持的就是Python,然后才是Java,再然后才是PHP,Python有多受重视可见一斑。现在爬虫类应用开发工作有着大量的缺口,学Python,已经变得和学英语一样,成为了现代人的基本计算机技能之一了,这是人和。具备天时地利人和三大要素于一身,Python的火爆也就可以理解了。
总而言之,Python的上手较为简单,面向对象(划重点,要考),代码结构对新手极为友好,有着极为丰富的数据库支持,多平台调用极为方便,有着极为广泛的应用同时有着极为广泛的求职缺口,并且在未来将主导新的风口——人工智能