python中⾯向对象的缺点_python优点与缺点
Python是⼀种⾯向对象的、解释型的、通⽤的、开源的脚本编程语⾔,它之所以⾮常流⾏,我认为主要有三点原因:Python 简单易⽤,学习成本低,看起来⾮常优雅⼲净;
Python 标准库和第三库众多,功能强⼤,既可以开发⼩⼯具,也可以开发企业级应⽤;
Python 站在了⼈⼯智能和⼤数据的风⼝上,站在风⼝上,猪都能飞起来。
举个简单的例⼦来说明⼀下 Python 的简单。⽐如要实现某个功能,C语⾔可能需要 100 ⾏代码,⽽ Python 可能只需要⼏⾏代码,因为C语⾔什么都要得从头开始,⽽ Python 已经内置了很多常见功能,我们只需要导⼊包,然后调⽤⼀个函数即可。
简单就是 Python 的巨⼤魅⼒之⼀,是它的杀⼿锏,⽤惯了 Python 再⽤C语⾔简直不能忍受。
本⽂就来汇总⼀下 Python 的特性,综合对⽐⼀下它的优缺点。
Python 的优点
1) 语法简单
css元素定位方法
极简python快速入门教程
和传统的 C/C++、Java、C#等语⾔相⽐,Python 对代码格式的要求没有那么严格,这种宽松使得⽤户在编写代码时⽐较舒服,不⽤在细枝末节上花费太多精⼒。我来举两个典型的例⼦:Python 不要求在每个语句的最后写分号,当然写上也没错;
定义变量时不需要指明类型,甚⾄可以给同⼀个变量赋值不同类型的数据。
这两点也是 PHP、JavaScript、MATLAB 等常见脚本语⾔都具备的特性。
Python 是⼀种代表极简主义的编程语⾔,阅读⼀段排版优美的 Python 代码,就像在阅读⼀个英⽂段落,⾮常贴近⼈类语⾔,所以⼈们常说,Python 是⼀种具有伪代码特质的编程语⾔。
伪代码(Pseudo Code)是⼀种算法描述语⾔,它介于⾃然语⾔和编程语⾔之间,使⽤伪代码的⽬的是为了使被描述的算法可以容易地以任何⼀种编程语⾔(Pascal,C,Java,etc)实现。因此,伪代码必须结构清晰、代码简单、可读性好,并且类似⾃然语⾔。
简述索引的作用
如果你学过数据结构,阅读过严蔚敏的书籍,那你⼀定知道什么是伪代码。
为什么说简单就是杀⼿锏?⼀单简单了,⼀件事情就会变得很纯粹;我们在开发 Python 程序时,可以专注于解决问题本⾝,⽽不⽤顾虑语法的细枝末节。在简单的环境中做⼀件纯粹的事情,那简直是⼀种享受。
2) Python 是开源的
开源,也即开放源代码,意思是所有⽤户都可以看到源代码。
Python 的开源体现在两⽅⾯:
① 程序员使⽤ Python 编写的代码是开源的。
⽐如我们开发了⼀个 BBS 系统,放在互联⽹上让⽤户下载,那么⽤户下载到的就是该系统的所有源代码,并且可以随意修改。这也是解释型语⾔本⾝的特性,想要运⾏程序就必须有源代码。
② Python 解释器和模块是开源的。
官⽅将 Python 解释器和模块的代码开源,是希望所有 Python ⽤户都参与进来,⼀起改进 Python 的性能,弥补 Python 的漏洞,代码被研究的越多就越健壮。
这个世界上总有那么⼀⼩撮⼈,他们或者不慕名利,或者为了达到某种⽬的,会不断地加强和改善 Python。千万不要认为所有⼈都是只图眼前利益的,总有⼀些精英会放长线钓⼤鱼,总有⼀些极客会做⼀些炫酷的事情。
3) Python 是免费的
开源并不等于免费,开源软件和免费软件是两个概念,只不过⼤多数的开源软件也是免费软件;Python 就是这样⼀种语⾔,它既开源⼜免费。
如果你想区分开源和免费的概念,请猛击:开源就等于免费吗?⽤事实来说话
⽤户使⽤ Python 进⾏开发或者发布⾃⼰的程序,不需要⽀付任何费⽤,也不⽤担⼼版权问题,即使作为商业⽤途,Python 也是免费的。
4) Python 是⾼级语⾔
这⾥所说的⾼级,是指 Python 封装较深,屏蔽了很多底层细节,⽐如 Python 会⾃动管理内存(需要时⾃动分配,不需要时⾃动释放)。
h5单页网站制作⾼级语⾔的优点是使⽤⽅便,不⽤顾虑细枝末节;缺点是容易让⼈浅尝辄⽌,知其然不知其所以然。
java中eclipse的使用方法
5) Python 是解释型语⾔,能跨平台
解释型语⾔⼀般都是跨平台的(可移植性好),Python 也不例外,我们已经在《编译型语⾔和解释型语⾔的区别》中进⾏了讲解,这⾥不再赘述。
5) Python 是⾯向对象的编程语⾔
⾯向对象是现代编程语⾔⼀般都具备的特性,否则在开发中⼤型程序时会捉襟见肘。
Python ⽀持⾯向对象,但它不强制使⽤⾯向对象。Java 是典型的⾯向对象的编程语⾔,但是它强制必须以类和对象的形式来组织代码。
6) Python 功能强⼤(模块众多)
setonclicklistener用法Python 的模块众多,基本实现了所有的常见的功能,从简单的字符串处理,到复杂的 3D 图形绘制,借助 Python 模块都可以轻松完成。
Python 社区发展良好,除了 Python 官⽅提供的核⼼模块,很多第三⽅机构也会参与进来开发模块,这其中就有 Google、Facebook、Microsoft 等软件巨头。即使是⼀些⼩众的功能,Python 往往也有对应的开源模块,甚⾄有可能不⽌⼀个模块。
7) Python 可扩展性强
Python 的可扩展性体现在它的模块,Python 具有脚本语⾔中最丰富和强⼤的类库,这些类库覆盖了⽂件 I/O、GUI、⽹络编程、数据库访问、⽂本操作等绝⼤部分应⽤场景。
这些类库的底层代码不⼀定都是 Python,还有很多 C/C++ 的⾝影。当需要⼀段关键代码运⾏速度更
快时,就可以使⽤ C/C++ 语⾔实现,然后在 Python 中调⽤它们。Python 能把其它语⾔“粘”在⼀起,所以被称为“胶⽔语⾔”。
Python 依靠其良好的扩展性,在⼀定程度上弥补了运⾏效率慢的缺点。
Python 的缺点
除了上⾯提到的各种优点,Python 也是有缺点的。
1) 运⾏速度慢
运⾏速度慢是解释型语⾔的通病,Python 也不例外。
Python 速度慢不仅仅是因为⼀边运⾏⼀边“翻译”源代码,还因为 Python 是⾼级语⾔,屏蔽了很多底层细节。这个代价也是很⼤
的,Python 要多做很多⼯作,有些⼯作是很消耗资源的,⽐如管理内存。
Python 的运⾏速度⼏乎是最慢的,不但远远慢于 C/C++,还慢于 Java。
但是速度慢的缺点往往也不会带来什么⼤问题。⾸先是计算机的硬件速度运来越快,多花钱就可以堆
出⾼性能的硬件,硬件性能的提升可以弥补软件性能的不⾜。
其次是有些应⽤场景可以容忍速度慢,⽐如⽹站,⽤户打开⼀个⽹页的⼤部分时间是在等待⽹络请求,⽽不是等待服务器执⾏⽹页程序。服务器花 1ms 执⾏程序,和花 20ms 执⾏程序,对⽤户来说是毫⽆感觉的,因为⽹络连接时间往往需要 500ms 甚⾄ 2000ms。
2) 代码加密困难
不像编译型语⾔的源代码会被编译成可执⾏程序,Python 是直接运⾏源代码,因此对源代码加密⽐较困难。
开源是软件产业的⼤趋势,传统程序员需要转变观念。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。