Python 简介

标签: 

该主题包含 1 则回复,有 1 个参与人,并且由  FrankDJWu6 年, 10 月 前 最后更新。

正在检视 2 篇文章 - 1 至 2 (共计 2 篇)
  • 作者
    文章
  • #1122

    FrankDJWu
    参与者

    Python是著名的Guido van Rossum在1989年耶诞节期间,为了打发无聊的耶诞节而编写的一个程式设计语言。
    现在,全世界差不多有600多种程式设计语言,但流行的程式设计语言也就那么20来种。如果你听说过TIOBE排行榜,你就能知道程式设计语言的大致流行程度。这是最近10年最常用的10种程式设计语言的变化图:

    总的来说,这几种程式设计语言各有千秋。C语言是可以用来编写作业系统的贴近硬体的语言,所以,C语言适合开发那些追求运行速度、充分发挥硬体性能的程式。而Python是用来编写应用程式的高级程式设计语言。

    当你用一种语言开始作真正的软体发展时,你除了编写代码外,还需要很多基本的已经写好的现成的东西,来说明你加快开发进度。比如说,要编写一个电子邮件用户端,如果先从最底层开始编写网路通讯协定相关的代码,那估计一年半载也开发不出来。高级程式设计语言通常都会提供一个比较完善的基础代码库,让你能直接调用,比如,针对电子邮件协定的SMTP库,针对桌面环境的GUI库,在这些已有的代码库的基础上开发,一个电子邮件用户端几天就能开发出来。

    Python就为我们提供了非常完善的基础代码库,覆蓋了网路、档、GUI、资料库、文本等大量内容,被形象地称作“内置电池(batteries included)”。用Python开发,许多功能不必从零编写,直接使用现成的即可。
    除了内置的库外,Python还有大量的协力厂商库,也就是别人开发的,供你直接使用的东西。当然,如果你开发的代码通过很好的封装,也可以作为协力厂商库给别人使用。

    许多大型网站就是用Python开发的,例如YouTube、Instagram,还有国内的豆瓣。很多大公司,包括Google、Yahoo等,甚至NASA(美国航空航天局)都大量地使用Python。

    龟叔给Python的定位是“优雅”、“明确”、“简单”,所以Python程式看上去总是简单易懂,初学者学Python,不但入门容易,而且将来深入下去,可以编写那些非常非常复杂的程式。

    总的来说,Python的哲学就是简单优雅,尽量写容易看明白的代码,尽量写少的代码。如果一个资深程式师向你炫耀他写的晦涩难懂、动不动就几万行的代码,你可以尽情地嘲笑他。

    那Python适合开发哪些类型的应用呢?

    首选是网路应用,包括网站、后台服务等等;
    其次是许多日常需要的小工具,包括系统管理员需要的脚本任务等等;
    另外就是把其他语言开发的程式再包装起来,方便使用。
    最后说说Python的缺点。

    任何程式设计语言都有缺点,Python也不例外。优点说过了,那Python有哪些缺点呢?
    第一个缺点就是运行速度慢,和C程式相比非常慢,因为Python是解释型语言,你的代码在执行时会一行一行地翻译成CPU能理解的机器码,这个翻译过程非常耗时,所以很慢。而C程式是运行前直接编译成CPU能执行的机器码,所以非常快。

    但是大量的应用程式不需要这么快的运行速度,因为使用者根本感觉不出来。例如开发一个下载MP3的网路应用程式,C程式的执行时间需要0.001秒,而Python程式的执行时间需要0.1秒,慢了100倍,但由于网路更慢,需要等待1秒,你想,用户能感觉到1.001秒和1.1秒的区别吗?这就好比F1赛车和普通的计程车在北京三环路上行驶的道理一样,虽然F1赛车理论时速高达400公里,但由于三环路堵车的时速只有20公里,因此,作为乘客,你感觉的时速永远是20公里。

    第二个缺点就是代码不能加密。如果要发布你的Python程式,实际上就是发布原始程式码,这一点跟C语言不同,C语言不用发布原始程式码,只需要把编译后的机器码(也就是你在Windows上常见的xxx.exe档)发布出去。要从机器码反推出C代码是不可能的,所以,凡是编译型的语言,都没有这个问题,而解释型的语言,则必须把源码发布出去。

    这个缺点仅限于你要编写的软体需要卖给别人挣钱的时候。好消息是目前的互联网时代,靠卖软体授权的商业模式越来越少了,靠网站和移动应用卖服务的模式越来越多了,后一种模式不需要把源码给别人。
    再说了,现在如火如荼的开源运动和互联网自由开放的精神是一致的,互联网上有无数非常优秀的像Linux一样的开原始程式码,我们千万不要高估自己写的代码真的有非常大的“商业价值”。那些大公司的代码不愿意开放的更重要的原因是代码写得太烂了,一旦开源,就没人敢用他们的产品了。

    • 该主题由  FrankDJWu 于 6 年, 10 月 前 修改。
    附加档案:
    你必须 登入 才能查看附件档案。
    #1151

    FrankDJWu
    参与者

    转载自廖雪峰的官方网站

正在检视 2 篇文章 - 1 至 2 (共计 2 篇)

抱歉,回复主题必需先登入。