python语言的优点

第一:上手快

作为初学python的科班出身的小白,python非常简单,非常适合人类阅读。阅读一个良好的Python程序就感觉像是在读英语一样,尽管这个英语的要求非常严格!Python的这种伪代码本质是它最大的优点之一。它使你能够专注于解决问题而不是去搞明白语言本身。

第二:容易学习

python底层是用c语言写的,但是它摈弃了c中非常复杂的指针,简化了大量的python的语法。你可以把Python嵌入你的C/C++程序,从而向你的程序用户提供脚本功能。

第三:开源

Python是FLOSS(自由/开放源码软件)之一。简单地说,你可以自由地发布这个软件的拷贝、阅读它的源代码、根据你的需求对它做改动、把它的一部分用于新的自由软件中。Python希望看到一个更加优秀的人创造并经常改进。

第四:可移植性强

  1. 由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工作在不同平台上)。如果你小心地避免使用依赖于系统的特性,那么你的所有Python程序无需修改就可以在下述任何平台上面运行。这些平台包括Linux、Windows、FreeBSD、Macintosh、Solaris、OS/2、Amiga、AROS、AS/400、BeOS、OS/390、z/OS、Palm OS、QNX、VMS、Psion、Acom RISC OS、VxWorks、PlayStation、Sharp Zaurus、Windows CE甚至还有PocketPC、Symbian以及Google基于linux开发的Android平台!
  2. 在计算机内部,Python解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。事实上,由于你不再需要担心如何编译程序,如何确保连接转载正确的库等等,所有这一切使得使用Python更加简单。由于你只需要把你的Python程序拷贝到另外一台计算机上,它就可以工作了,这也使得你的Python程序更加易于移植。

第五:面向对象编程

Python既支持面向过程的函数编程也支持面向对象的抽象编程。在面向过程的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在面向对象的语言中,程序是由数据和功能组合而成的对象构建起来的。与其他主要的语言如C++和Java相比,Python以一种非常强大又简单的方式实现面向对象编程。

第六:可扩展性和可嵌入性。

如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。你可以把Python嵌入你的C/C++程序,从而向你的程序用户提供脚本功能。

第七:丰富的库。

Python标准库确实很庞大。python有可定义的第三方库可以使用。它可以帮助你处理各种工作,包括正则表达式、文档生成、单元测试、线程、数据库、网页浏览器、CGI、FTP、电子邮件、XML、XML-RPC、HTML、WAV文件、密码系统、GUI(图形用户界面)、Tk和其他与系统有关的操作。记住,只要安装了Python,所有这些功能都是可用的。这被称作Python的“功能齐全”理念。除了标准库以外,还有许多其他高质量的库,如wxPython、Twisted和Python图像库等等。

第八:规范

规范的代码。Python采用强制缩进的方式使得代码具有极佳的可读性。

总结:Python确实是一种十分精彩又强大的语言。它合理地结合了高性能与使得编写程序简单有趣的特色。

python语言的缺点

第一:运行速度低

有速度要求的话,用C++改写关键部分吧。不过对于用户而言,机器上运行速度是可以忽略的。因为用户根本感觉不出来这种速度的差异。

第二:不能加密

既是优点也是缺点,python的开源性是的Python语言不能加密,但是目前国内市场纯粹靠编写软件卖给客户的越来越少,网站和移动应用不需要给客户源代码,所以这个问题就是问题了。随着时间的推移,很多国内软件公司,尤其是游戏公司,也开始规模使用他。

第三:构架选择太多

(没有像C#这样的官方.net构架,也没有像ruby由于历史较短,构架开发的相对集中。Ruby on Rails 构架开发中小型web程序天下无敌)。不过这也从另一个侧面说明,python比较优秀,吸引的人才多,项目也多。

第四:线程不能利用多CPU问题

这是Python被人诟病最多的一个缺点,GIL即全局解释器锁(Global Interpreter Lock),是计算机程序设计语言解释器用于同步线程的工具,使得任何时刻仅有一个线程在执行,Python的线程是操作系统的原生线程。在Linux上为pthread,在Windows上为Win thread,完全由操作系统调度线程的执行。一个python解释器进程内有一条主线程,以及多条用户程序的执行线程。即使在多核CPU平台上,由于GIL的存在,所以禁止多线程的并行执行。关于这个问题的折衷解决方法,我们在以后线程和进程章节里再进行详细探讨。

python语言的优点与缺点相关推荐

  1. Python 语言的优点

    很多人想知道Python为什么这么火?Python语言拥有成熟高效的资源库,Python只是完成调用,开发效率大大提高.Python应用范围广,在服务器上无需安装,作用更大.Python是开源的,并且 ...

  2. python语言的优点及与其他语言相比

    一.编程语言是什么 是用来定义 计算机程序 的形式语言.我们通过编程语言来编写程序代码,再通过语言处理程序执行向计算机发送指令,让计算机完成对应的工作.简单来说,编程语言就是人类和计算机进行交流的语言 ...

  3. Python语言的优点及优势 python开发

    python作为一门高级编程语言,它的诞生虽然很偶然,但是它得到程序员的喜爱却是必然之路,Python入门简单,相比于其他语言,初学者很容易入门,除此之外,Python还具有以下优点: 1. 简单:P ...

  4. python面向对象编程的优点-Python语言有哪些优点?

    2018年主流的十大编程语言中,Python排名第一,被广大使用者誉为"更美好"编程语言.Python语言自身的语言特点,使得他深受开发者的喜爱,那么Python语言到底有哪些优点 ...

  5. python语言程序的特点_Python语言有哪些优点?

    2018年主流的十大编程语言中,Python排名第一,被广大使用者誉为"更美好"编程语言.Python语言自身的语言特点,使得他深受开发者的喜爱,那么Python语言到底有哪些优点 ...

  6. python的优缺点有哪些-python语言的优缺点

    python语言的优点 ⑴作为初学python的科班出身的小白,python非常简单,非常适合人类阅读.阅读一个良好的Python程序就感觉像是在读英语一样,尽管这个英语的要求非常严格!Python的 ...

  7. 学python的好处-python语言的优点和缺点

    python语言的优点 ⑴作为初学python的科班出身的小白,python非常简单,非常适合人类阅读.阅读一个良好的Python程序就感觉像是在读英语一样,尽管这个英语的要求非常严格!Python的 ...

  8. python语言的优缺点论文_Python语言的优缺点是什么呢?

    Python这门语言的魅力和影响力已经远超Java.C.C++等编程语言前辈,主流的十大编程语言中,Python排名第一.被广大使用者誉为"更美好"编程语言.也常常被昵称为&quo ...

  9. Python语言有哪些特点?3分钟了解

    Python培训在如今热火朝天,那么Python到底是怎样的一种语言呢?Python语言作为一种比较"新"的编程语言,能在众多编程语言中脱颖而出,且与C语言.C++.Java等&q ...

最新文章

  1. Python中调用Linux命令并获取返回值
  2. 笔记2深度学习 梯度和梯度法
  3. 使用fastcoll进行md5碰撞,两个不同的文件md5值一样。
  4. Jenkins忘记admin密码处理方法
  5. 朋友圈有趣的灵魂都去哪了?这几个优质公号给你答案
  6. python随机生成数字列表_详解Python利用random生成一个列表内的随机数
  7. 29 CO配置-控制-产品成本控制-成本对象控制-期末结算-定义分配
  8. 关于CMMI和PMBOK之间的关系和区别比较
  9. form表单居中_HTML基本结构、命名及对表单专项练习解释
  10. 各种数据库之间数据迁移工具
  11. 我在上海奋斗的五年---从月薪3500到700万(读后感:一个真汉子的人生)
  12. 微信商户号企业付款到零钱开通地址
  13. 《小猪佩奇拜年歌》在QQ音乐和网易云音乐上线
  14. 坚果Pro2识别网页链接问题
  15. 房天下二手交易平台房源数据采集
  16. 浅谈OSI七层模型及ICP/IP四层模型
  17. [线性控制理论]关于Laplace变换中求导运算的结果推导
  18. Linux FUSE开发
  19. border-radius的一种经典使用(上凸边框)
  20. 计算机网络——路由算法

热门文章

  1. XMPP协议的基本理解
  2. Filter过滤器及其作用介绍
  3. 中海达手簿软件Hi-Survey Road提示:非认证设备,不支持RTK采集!——授之以渔
  4. ch340 win7 64位驱动下载
  5. 【linux 上批量下载amazon s3数据】
  6. 思科无线AP配置之三(在web页面对ap进行配置)
  7. MyCat实现MySQL读写分离(双主双从多库)
  8. 数字IC后端设计如何快速入门?(内附学习视频)
  9. easypoi教程_Easypoi的使用
  10. 如何在正文插入页眉页脚 要求奇偶页不一样