• Python是什么?一篇文章带你全面了解Python


    Python在各种编程语言里是一种怎样的存在?“各种编程语言”这个范围就有点大了。

    现在,全世界差不多有600多种编程语言,流行的编程语言也有20来种。但如果你听说过TIOBE排行榜,你就能知道编程语言的大致流行程度。

    在TIOBE公布的《TIOBE 4 月 TOP 20 编程语言》中,Python位列第一,而这也是Python连续占据榜首的第七个月。

    再来看一下《TOP 10 编程语言 TIOBE 指数走势(2002-2022)》 

    从这个指数走势来看,Python语言从2018年开始发展速度便开始呈指数级增长,而且明显还未到达高点。 

    最后看看不同编程语言之间的真实区别:

    常用的编程语言都是各有千秋,各自都有自己的优点。比如:

    • C语言可以编写操作系统的贴近硬件的语言,适合开发那些追求运行速度充分发挥硬件性能的程序
    • Python是用来编写应用程序的高级编程语言。它的定位是“优雅”、“明确”、“简单”,尽量写容易看明白的代码,尽量写少的代码。

    01 Python到底是一种什么样的语言

    • 一种解释型语言:开发过程中没有编译这个环节,能省下不少时间与精力。
    • 一种交互式语言:可以在一个Python提示符,直接互动执行写你的程序。
    • 面向对象的语言:支持面向对象的风格或代码封装在对象的编程技术。
    • 是初学者的语言:支持广泛的应用程序开发。

    我举个例子:比如说要编写一个电子邮件客户端。

    • 如果先从最底层开始编写网络协议相关的代码,那估计一年半载也开发不出来。
    • 高级编程语言通常会提供一个比较完善的基础代码库,覆盖了网络、文件、GUI、数据库、文本等大量内容,能直接调用。

    也就是说,用Python这种高级编程语言,针对电子邮件协议的SMTP库,针对桌面环境的GUI库,在已有的代码库的基础上开发,一个电子邮件客户端几天就能开发出来。

    除了内置的库外,Python还有大量的第三方库,也就是别人开发的,供你直接使用的东西。当然,如果你开发的代码通过很好的封装,也可以作为第三方库给别人使用。

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

    • 首选是网络应用,包括网站、后台服务等等。

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

    • 其次是许多日常需要的小工具,包括系统管理员需要的脚本任务等等;
    • 另外就是把其他语言开发的程序再包装起来,方便使用。

    03 Python的优缺点有哪些?

    3.1 Python的优点

    • 1.易于学习:Python有相对较少的关键字,结构简单,学习起来更加简单。
    • 2.易于阅读:Python代码定义的相对于其他的代码更加的清晰。
    • 3.易于维护:Python的成功在于它的源代码是相当容易维护的。
    • 4.广泛的标准库:Python的最大的优势之一是丰富的库,跨平台的,在UNIX,Windows和Macintosh兼容很好。
    • 5.互动模式:互动模式的支持,可以从终端输入执行代码并获得结果的语言,互动的测试和调试代码片断。
    • 6.可移植:基于其开放源代码的特性,Python已经被移植(也就是使其工作)到许多平台。
    • 7.可扩展:如果你需要一段运行很快的关键代码,或者是想要编写一些不愿开放的算法,你可以使用C或C++完成那部分程序,然后从你的Python程序中调用。
    • 8.数据库:Python提供所有主要的商业数据库的接口。
    • 9.GUI编程:Python支持GUI可以创建和移植到许多系统调用。
    • 10.可嵌入: 你可以将Python嵌入到C/C++程序,让你的程序的用户获得"脚本化"的能力。

    3.1 Python的缺点

    第一个缺点就是运行速度慢,和C程序相比非常慢。

    因为Python是解释型语言,你的代码在执行时会一行一行地翻译成CPU能理解的机器码,这个翻译过程非常耗时,而C程序是运行前直接编译成CPU能执行的机器码,所以非常快。

    但是大量的应用程序不需要这么快的运行速度,因为用户根本感觉不出来。

    举个例子:

    开发一个下载MP3的网络应用程序,C程序的运行时间需要0.001秒,而Python程序的运行时间需要0.1秒,慢了100倍,但由于网络更慢,需要等待1秒,你想,用户能感觉到1.001秒和1.1秒的区别吗?

    第二个缺点就是代码不能加密。

    如果要发布你的Python程序,实际上就是发布源代码,这一点跟C语言不同,C语言不用发布源代码,只需要把编译后的机器码(也就是你在Windows上常见的xxx.exe文件)发布出去。

    要从机器码反推出C代码是不可能的,所以,凡是编译型的语言,都没有这个问题,而解释型的语言,则必须把源码发布出去。

    这个缺点仅限于你要编写的软件需要卖给别人挣钱的时候。好消息是目前的互联网时代,靠卖软件授权的商业模式越来越少了,靠网站和移动应用卖服务的模式越来越多了,后一种模式不需要把源码给别人。

    再说了,现在如火如荼的开源运动和互联网自由开放的精神是一致的,互联网上有无数非常优秀的像Linux一样的开源代码,我们千万不要高估自己写的代码真的有非常大的“商业价值”。那些大公司的代码不愿意开放的更重要的原因是代码写得太烂了,一旦开源,就没人敢用他们的产品了。

    当然,Python还有其他若干小缺点,请自行忽略,就不一一列举了。

  • 相关阅读:
    PMP考试敏捷占比有多少?解疑
    我所使用的生产 Java 17 启动参数
    Python爬虫是什么?
    Abbkine 细胞侵袭分析试剂盒,简单方便,快速检测
    基于无人机倾斜摄影模型提取高精度地形DEM数据
    JMeter启动时常见的错误
    2023-8-20 CVTE视源股份后端开发实习一面
    [论文阅读] 颜色迁移-梯度保护颜色迁移
    链表中LinkList L与LinkList *L( & * L.elem L->elem)
    C# 问题记录
  • 原文地址:https://blog.csdn.net/BeWorkingMan/article/details/125409053