python适合人工智能的理由和优势


Posted in Python onJune 28, 2019

Python借助AI和数据科学,目前已经攀爬到了编程语言生态链的顶级位置,可以说Python基本上与AI已经紧密捆绑在了一起了。为什么人工智能开发要使用到python语言?小编认为基于以下几个原因:

简洁高效

Python作为一门编程语言,对于程序员来说,想要从事AI和机器学习相关的工作,Python是再合适不过的选择。简洁优美、开发效率高,Python语言已经得到了越来越多公司的青睐,很多公司都开始选用Python进行网站Web、搜索引擎、云计算、大数据、人工智能、科学计算等方向的开发。

可移植性强

Python希望看到一个更加优秀的人创造并经常改进。由于它的开源本质,Python已经被移植在许多平台上。如果你小心地避免使用依赖于系统的特性,那么你的所有Python程序无需修改就可以在下述任何平台上面运行。

庞大的标准库

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

有的语言过于依赖背后金主的商业支持,好的时候风光无限,一旦被打入冷宫,连生存下去都成问题。更多的语言,刚刚取得一点成功,就迫不及待的想成为全能冠军,在各个方向上拼命的伸展触角,特别是在增强表达能力和提升性能方面经常过分积极,不惜将核心语言改得面目全非,终将变成谁都无法掌控的庞然大物。

相比之下,Python 是现代编程语言设计和演化当中的一个成功典范。Python之所以在战略定位上如此清晰,战略坚持上如此坚定,归根结底是因为其社区构建了一个堪称典范的决策和治理机制。因此稳坐人工智能语言头把交椅Python也是实至名归。

网友观点:

为什么人工智能用Python

这属于一种误解,人工智能的核心算法是完全依赖于C/C++的,因为是计算密集型,需要非常精细的优化,还需要GPU、专用硬件之类的接口,这些都只有C/C++能做到。所以某种意义上其实C/C++才是人工智能领域最重要的语言。

Python是这些库的API binding,使用Python是因为CPython的胶水语言特性,要开发一个其他语言到C/C++的跨语言接口,Python是最容易的,比其他语言的ffi门槛要低不少,尤其是使用Cython的时候。其他语言的ffi许多都只能导入C的函数入口点,复杂的数据结构大多只能手工用byte数组拼起来,如果还需要回调函数输入那就无计可施了。而CPython的C API是双向融合的,可以直接对外暴露封装过的Python对象,还可以允许用户通过继承这些自定义对象来引入新特性,甚至可以从C代码当中再调用Python的函数(当然,也有一定的条件限制)。不过这也是PyPy这样的JIT解释器的一个障碍。

而且Python历史上也一直都是科学计算和数据分析的重要工具,有numpy这样的底子,因为行业近似所以选择API binding语言的时候会首选Python,同时复用numpy这样的基础库既减少了开发工作量,也方便从业人员上手。

Python 相关文章推荐
简单介绍Python中用于求最小值的min()方法
May 15 Python
基于Python实现文件大小输出
Jan 11 Python
深入学习Python中的装饰器使用
Jun 20 Python
浅析Python中元祖、列表和字典的区别
Aug 17 Python
解决python3中解压zip文件是文件名乱码的问题
Mar 22 Python
python去掉 unicode 字符串前面的u方法
Oct 21 Python
为什么Python中没有"a++"这种写法
Nov 27 Python
提升Python效率之使用循环机制代替递归函数
Jul 23 Python
Django Haystack 全文检索与关键词高亮的实现
Feb 17 Python
python 使用while循环输出*组成的菱形实例
Apr 12 Python
matplotlib基础绘图命令之bar的使用方法
Aug 13 Python
Python利用socket模块开发简单的端口扫描工具的实现
Jan 27 Python
python画图的函数用法以及技巧
Jun 28 #Python
使用python爬取微博数据打造一颗“心”
Jun 28 #Python
详解python和matlab的优势与区别
Jun 28 #Python
python中while和for的区别总结
Jun 28 #Python
python脚本当作Linux中的服务启动实现方法
Jun 28 #Python
如何用Python制作微信好友个性签名词云图
Jun 28 #Python
python打包exe开机自动启动的实例(windows)
Jun 28 #Python
You might like
《Re:从零开始的异世界生活》剧情体验,手游新作定名
2020/04/09 日漫
php中批量替换文件名的实现代码
2011/07/20 PHP
分享一个Laravel好用的Cache宏
2015/03/02 PHP
PHP实现生成数据字典功能示例
2018/05/24 PHP
Mootools 1.2教程 类(一)
2009/09/15 Javascript
jquery操作select option 的代码小结
2011/06/21 Javascript
用js设置下拉框为只读的小技巧
2014/04/10 Javascript
AngularJS开发教程之控制器之间的通信方法分析
2016/12/25 Javascript
webpack配置文件和常用配置项介绍
2017/04/28 Javascript
Bootstrap Tree View简单而优雅的树结构组件实例解析
2017/06/15 Javascript
详解Vue + Vuex 如何使用 vm.$nextTick
2017/11/20 Javascript
Vue动态创建注册component的实例代码
2019/06/14 Javascript
js实现转动骰子模型
2019/10/24 Javascript
JS实现数据动态渲染的竖向步骤条
2020/06/24 Javascript
[54:47]Liquid vs VP Supermajor决赛 BO 第五场 6.10
2018/07/05 DOTA
python超简单解决约瑟夫环问题
2015/05/12 Python
用ReactJS和Python的Flask框架编写留言板的代码示例
2015/12/19 Python
Python正则表达式匹配数字和小数的方法
2019/07/03 Python
python实现tail实时查看服务器日志示例
2019/12/24 Python
PIL包中Image模块的convert()函数的具体使用
2020/02/26 Python
Python检测端口IP字符串是否合法
2020/06/05 Python
Python获取浏览器窗口句柄过程解析
2020/07/25 Python
python批量合成bilibili的m4s缓存文件为MP4格式 ver2.5
2020/12/01 Python
HTML5 本地存储之如果没有数据库究竟会怎样
2013/04/25 HTML / CSS
html5 css3网站菜单实现代码
2013/12/23 HTML / CSS
美国东北部户外服装和设备零售商:Eastern Mountain Sports
2016/10/05 全球购物
亚洲最大旅游体验平台:KKday
2017/10/21 全球购物
Super-Pharm波兰:药房和香水在一个地方
2020/08/18 全球购物
会话Bean的种类
2013/11/07 面试题
资产经营总监岗位职责范文
2013/12/01 职场文书
给女儿的表扬信
2014/01/18 职场文书
爱护公共设施的标语
2014/06/24 职场文书
银行自荐信怎么写
2015/03/05 职场文书
2016大一新生军训心得体会
2016/01/11 职场文书
小学三年级作文之写景
2019/11/05 职场文书
golang特有程序结构入门教程
2021/06/02 Python