编程语言千千万,用Python的占一半?Python到底好用吗?

suhuanxiong


结论:Python占一半,所言不实;Python好用吗?好用。


前言

本文主要针对Python的“好用”、“易用”展开讨论。


Python市场份额

Python的市场份额与变化趋势,我们还是去TIOBE看一下吧。

Python的编程语言占有率,大概是现在最高的 9.345%。基本坐稳了前三。

要说起半壁江山,那是完全夸大其词。

再用 google trends查看近些年的趋势。

我们比较了c, javascript, python三种语言。大概与TIOBE的排名相符。

特别是python的热词搜索,pandas这个数据处理分析库,出现的频次高举榜首。也印证了python作为数据处理,人工智能领域,扛把子的地位。


python非常好用


1 - 简单易用,适合初学,快速上手


这本身就是python追求的目标。语法关键字直观而精简。


2 - 五行代码画曲线


3 - 一行代码,局域网共享你的文件

在命令行直接运行

python -m SimpleHTTPServer 8081

然后才浏览器使用 http://192.168.x.x:8081 就可以查看你当前的文件目录。

点击文件即可下载。


4 - 丰富的语言结构,简单的代码实现

列举一些简单的语言结构示例。

定义函数,直接使用。

列表,字典结构,简单的多重循环。

容易上手的正则表达式。

异常处理只需手动处理。

灵活的数据结构,和遍历方法。

面向对象也手到擒来。


结语

“好用”很难界定,所以泛泛而谈。

比如强制的tab对齐,缩进表示程序结构层次,这个设计虽然简洁,但是与大多数语言的方法{}背道而驰,所以也是毁誉参半。

觉得顺手,能解决问题,能干活的,才是好语言。

您说呢?


我是@程序员小助手,持续分享编程与程序员成长相关的内容,欢迎关注~~

程序员小助手


在我还在读大学那几年假设让我推荐一门编程语言学习,我会推荐Java/PHP/C#其中的一门,这两年再让我推荐一门编程语言那么我一定会推荐Python或者Go语言,今天就着重讲一下为什么我会推荐Python语言。

一切都因为人工智能

在大概10年前,大家经常说的三个互联网技术行业主题分别是物联网、云计算、大数据,最近几年大家说得比较多的主要是区块链和人工智能,而最近一年区块链说得越来越少了,人工智能却说得越来越多。

阿尔法狗、百度无人车、微软Cortana、微软小冰、百度小度智能音箱、YouTube、今日头条......一个个成熟的人工智能系统正在走向消费市场,可以说实现人工智能是技术行业的最高理想。

Python成为人工智能领域的头牌语言是有原因的,在Python语言自身语言特点来说,Python确实是人工智能领域最合适的编程语言之一。

Python语法非常接近自然语言、简单高效可靠

Python语言是一门非常优雅的编程语言,语法特点上简单、高效、可靠。Python语言的语法谈不上严谨,也就是我们通常说的怎么写都行,这样让Python在开发的时候足够雷厉风行,不像Java这些编程语言这些编程语言,明明三两句话就能讲清楚的,必须要啰哩啰嗦的讲半天。Python的语法简洁到难以置信,一切为了效率而生,并且Python本身也是解释型编程语言,比如在很多编程语言编译的时候必须要给出类型限制、约束,Python语言就不需要做这些操作。

当然最重要的就是Python语言非常接近自然语言,写Python代码就跟写作文一样,这一点是要远远超过其他编程语言的。Python语言极其高效,主要是Python跟C/C++关系密切,这一点后面专门会说。

Python是可靠的,Python拥有非常多的稳定、可靠的第三方库,网页开发、应用开发、移动应用开发、硬件开发、数据处理都是Python擅长的领域,Web领域的Django,科学计算的NumPy、Pandas,机器学习领域的scikit-learn,自然语言处理的nltk,这些都是Python在各个领域的一些非常瞩目的解决方案,毫无疑问Python是非常可靠的。

Python跟C/C++非常友好、这是Python高效的根本原因

一句话总结就是:Python慢、可是Python可以直接连接很多高效的C/C++接口。

好像在大家眼里,解释型编程语言效率都比较低,可是为什么现在很多解释型语言效率非常高,现在再也没人敢叫Python/PHP小脚本语言了,而这些编程语言能够保持高效的根本原因其实是一样的,那就是跟C/C++相处十分友好。

PHP跟C语言很近,Python则跟C/C++相处非常友好,Python只需要关注逻辑算法本质,他只要能够调用好AI接口就好了,真正做底层计算的始终是高效的C/C++,Python只需要关注好逻辑运算就好,只需要告诉C/C++第一步怎么计算、第二步怎么计算,具体的实现全都交给C/C++就好了,因此Python的代码量也会很小,开发效率非常高。

C/C++擅长写底层算法,而Python用来做上层逻辑开发更完美,C/C++在上层逻辑开发方面不如Python,反过来Python做底层算法不如C/C++有效率,刚好两者搭配就是一个完美的解决方案,PHP也是一样,只关心业务,其余的全部交给C语言。

Python标准库强大、跨平台性能好、社区也够完善

Python是Google官方支持的,强大的TensorFlow深度学习框架Google就用了很大比例的Python开发 ,Google为了Python也构建起了一个不错的社区,尽管跟Java/PHPJavaScript社区相比还有比较大的差距。

Python还拥有非常强的兼容性,跨平台性能是不输PHP和Java的。Python本身又是开源的,开源就意味着有源源不断的社区贡献,这一点能够不断促进Python的进步。Python也是一门面向对象的编程语言,可是对过程编程也有很好的支持,面向对象编程使用基于数据和函数的对象编程。

Python还拥有非常丰富的标准库,这一点是Python强大的根本原因,正则表达式、文档生成、线程、单元测试、数据库、浏览器、CGI库、FTP支持、Email、XML/HTML、WAV、密码系统、GUI编程、Tk以及其他系统有关的操作,可以说Python已经非常强大了,它能做的事情太多了。

Python应用非常广泛、使用企业也非常多,国内如金山、百度、阿里巴巴、腾讯、今日头条(字节跳动)、新浪微博等企业,在国外比如Google、NASA、微软、YouTube、Facebook等企业也都在使用Python,这个编程语言使用的企业很多,尤其是人工智能现在正在高速发展,Python以后还有可能大展拳脚。


本文为字节跳动签约作者EmacserVimer悟空问答原创文章,未经允许转载、抄袭必究!

EmacserVimer


我上大学的时候,入门的编程课程就是C语言。为啥是C语言呢?因为C语言经几十年还长久不衰,始终保持榜单前五,它在汇编语言之上,在硬件的使用十分广,速度快,可以说C就是其他语言之母,学了C之后其他的语言也会相通。

C语言的难点和重点就在指针上,这一点很令人费解,很多人学到这就学不下去了。

与C不同的是,Python作为一种胶水语言,学习很简单非常易学,C程序写200行的Python可能只需要20行。现在有些国外学校已经把Python作为编程入门课程了。

现如今越来越多的程序员进入Python社区,贡献了很多好用的包,这些包可用于各个方面,像爬虫的requests,做数据的numpy等等。而人工智能,机器学习的出现又使Python火了一把。

学习编程是未来的一个趋势,几年级的小学僧都要开始学Python了😱,再不学就落伍了。

人生苦短,我用Python!


庭前赋雪那少年


首先,目前已知的编程语言大概有600种左右,由于不同的编程语言往往都有其特定的应用场景,所以随着应用场景的更替,有不少编程语言已经逐渐失去了应用的价值,目前比较流行的编程语言也就几十种,而这其中就包括Python、Java、C和PHP等编程语言。

目前Python语言的应用确实比较普遍,而且有大量的开源项目在采用Python编写,这也在一定程度上促进了Python的应用。虽然目前Python语言的上升趋势比较明显,但是Python语言目前更多的应用场景集中在大数据和人工智能领域,由于这些领域的技术要么依然处在发展期,要么处在落地应用的初期,所以Python语言在生产领域的应用依然有较大的发展空间。

Python与Java一样都属于全场景编程语言之一,Python语言除了在大数据和人工智能领域有大量应用之外,在Web开发领域和嵌入式领域也有广泛的应用,所以Python语言自身的语言生态还是比较健全的。相信随着大数据和人工智能的发展,未来Python语言的普及程度会进一步提升,语言自身的开发边界也会不断得到拓展。

最后,虽然Python语言可以写出非常复杂的程序,但是Python语言自身的语法结构还是比较清晰的,而且Python语言在诸多开发领域都有大量的库可以使用,这会在很大程度上提升开发的效率,降低大量的代码编写量,所以程序员往往更愿意使用Python语言。

我从事互联网行业多年,目前也在带计算机专业的研究生,主要的研究方向集中在大数据和人工智能领域,我会陆续写一些关于互联网技术方面的文章,感兴趣的朋友可以关注我,相信一定会有所收获。

如果有互联网、大数据、人工智能等方面的问题,或者是考研方面的问题,都可以在评论区留言!


IT人刘俊明


Python占一半太夸张了。

接触电脑十八九年了,一直也对电脑很感兴趣,会重装系统和简单解决电脑故障。也曾在寒暑假试着学过VB和C,大学报过Java的选修课,但都没有坚持多久就放弃了。看了好多天的书,也只会命令行显示“hello world”这种水平。

这一两年接触了Python,几天就能照猫画虎,在网上爬取各种资源,兴趣倍增。后面碰到一些难题,也有动力去解决。

Python入门简单,但是想学好也不容易。另外,现在Python被各种自媒体和培训机构吹的挺厉害,实际上可能没有那么多的需求。


山204131956


很高兴能来回答这个问题,以下我为大家分享,我个人对这个问题的看法与想法,希望我的分享能给大家带来帮助,也希望大家能够喜欢我的分享。

首先关于问题提到的现在Python语言是否占到了编程语言的一半,这个可能有点夸张了,现在Python是比较流行,它的流行是随着人工智能,大数据等领域的崛起而发展起来了,但在其他领域,比如传统的Web开发,Java、C#、php等语言仍然是主流语言,又或者在工业或者嵌入式开发领域,C/C++语言绝对是王者。所以Python只不过是在一些新兴领域内占据主流位置,占据一半之说有点言过其实。

另外关于Python语言的易用性,这点不得不承认确实非常好用,根据自己做的几个项目,和其它语言相比,代码量大大减少,开发速度很快,而且可用的第三方库非常丰富,可以说只有你想不到的,没有找不到的。此外其稳定性和跨平台特性也非常好。

以上分享的关于这个问题的解答都是个人的意见与建议,我希望我分享的这个问题的解答能够帮助到大家。

在这里同时也希望大家能够喜欢我的分享,大家如果有更好的关于这个问题的解答,还望分享评论出来共同讨论这话题。

我最后在这里,祝大家每天开开心心工作快快乐乐生活,健康生活每一天,家和万事兴,年年发大财,生意兴隆,谢谢!


亮亮老师之计算机编程


用了才知道,python已是很成熟的语言,各种实现的功能都有对应的依赖包去实现,软件的、硬件的都有,可以满足日常工作及企业需要。


Py未来


Python需要感觉还可以,我是做测试的,当时想做自动化测试,但是选择语言是一门关键,通过对比之后选择了Python,不为别的,易懂,简单,适合写脚本。当然了,还有Python还有更多的用途,要看你要应用到哪一领域了,下面聊一下优缺点哈可以简单的了解一下。

优点

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

开发效率非常高,Python有非常强大的第三方库,基本上你想通过计算机实现任何功能,Python官方库里都有相应的模块进行支持,直接下载调用后,在基础库的基础上再进行开发,大大降低开发周期,避免重复造轮子。

高级语言————当你用Python语言编写程序的时候,你无需考虑诸如如何管理你的程序使用的内存一类的底层细节

可移植性————由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工 作在不同平台上)。如果你小心地避免使用依赖于系统的特性,那么你的所有Python程序无需修改就几乎可以在市场上所有的系统平台上运行

可扩展性————如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。

可嵌入性————你可以把Python嵌入你的C/C++程序,从而向你的程序用户提供脚本功能。

缺点:

速度慢,Python 的运行速度相比C语言确实慢很多,跟JAVA相比也要慢一些,因此这也是很多所谓的大牛不屑于使用Python的主要原因,但其实这里所指的运行速度慢在大多数情况下用户是无法直接感知到的,必须借助测试工具才能体现出来,比如你用C运一个程序花了0.1s,用Python是0.01s,这样C语言直接比 Python快了10s,算是非常夸张了,但是你是无法直接通过肉眼感知的,因为一个正常人所能感知的时间最小单位是0.15-0.4s左右,哈哈。其实在大多数情况下Python已经完全可以满足你对程序速度的要求,除非你要写对速度要求极高的搜索引擎等,这种情况下,当然还是建议你用C去实现的。

代码不能加密,因为PYTHON是解释性语言,它的源码都是以名文形式存放的,不过我不认为这算是一个缺点,如果你的项目要求源代码必须是加密的,那你一开始就不应该用Python来去实现。

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


清凉静静地夏天


简单,不需要很深的理论知识也基本会用,比如我用它写了自动发信的脚本来结合zabbix实现邮件告警。


摸索中前进


编程语言千千万万,最后只存C/C++。


分享到:


相關文章: