全球超2万名开发者调研:Python 3渗透率至84%

640?wx_fmt=jpeg

 

编辑 | suiling

出品 | Python大本营(ID:pythonnews)

 

60s测试:你是否适合转型人工智能?

https://edu.csdn.net/topic/ai30?utm_source=cxrs_bw

 

 

在2018年秋季,Python软件基金会与JetBrains发起了年度Python开发者调查。 报告的目的是寻找Python领域的新趋势,帮助开发者深入了解2018年Python开发者的现状。

 

该报告共统计了来自150多个不同国家和地区的超过两万名开发人员的Python使用情况。Python大本营对该报告进行了翻译。

 

本报告要点如下:

 

  • Python 3的渗透率快速增长至84%(2017年为75%),仅有16%的用户使用Python 2作为主要解释器。

 

  • 越来越多开发者使用Python进行数据分析,该比例从2017年的50%上升至2018年的58%,比使用Python进行Web开发更受欢迎。

 

  • 将Python作为第一开发语言的开发者中,有半数也使用JavaScript进行开发。Python也经常和HTML/CSS, Bash/Shell, SQL, C/C++,以及Java一起使用。

 

  • Web开发者最喜欢的框架是Flask和Django,两者占比均为45%,远远超过了其他Python Web开发框架。

 

  • NumPy, Pandas, Matplotlib和SciPy是最受欢迎的数据科学框架和库。专门针对机器学习的库,比如SciKit-Learn, TensorFlow, Keras等也很受欢迎。

 

  • AWS是Python开发者最喜欢的云平台,然后是Google Cloud Platform, Heroku, DigitalOcean和Microsoft Azure平台。

 

  • 2018年受访的开发者中,运维人员的数量明显增加(与2017年相比增加了8个百分点)。在使用Python作为次要语言的开发者中,运维开发已经超过了Web开发。

 

  • PyCharm的两个版本是最受欢迎Python开发工具。有趣的是,VS Code的使用率从2017年的7%上升至2018年的16%,成为Python开发第二最受欢迎的编辑器。其他受欢迎的编辑器还有Vim, Sublime以及Jupyter Notebook。

 

  • 2/3的Python开发者使用Linux作为开发操作系统。

 

具体报告内容如下:

 

Python使用概况

 

主要开发语言or辅助开发语言

 

640?wx_fmt=png

 

调查中,84%的Python用户使用Python作为他们的第一开发语言,16%的用户将其作为辅助开发语言。 在2017年,79%用户使用Python作为第一语言,21%用户将其作为辅助开发语言。

 

除了Python,其他语言使用情况。

 

根据调查显示:参与调研的Python用户中有一半也使用JavaScript。 2018年的统计数据与2017年的结果非常相似。

 

640?wx_fmt=png

 

Python开发类型

 

用Python是工作需要还是个人需要?

 

640?wx_fmt=png

 

Python使用目的

 

从数据中看到,2018年的报告中58%的用户用Python进行数据分析,2017年这个数据是50%。机器学习也增长了7个百分点,Web开发与前一年相比仅增加了2个百分点。

 

640?wx_fmt=png

 

你参与过以下哪些领域的开发?

 

我们可以清楚地看到,Python游戏开发最主要是作为业余爱好,而Web开发、机器学习、数据分析和软件测试主要用在职业开发方面。

 

640?wx_fmt=png

 

你使用Python最多的领域是什么(单选)

 

640?wx_fmt=png

 

该问题是单选,乍一看,Web开发大幅领先(27%),大幅超过数据分析(17%)。但仔细观察后发现,机器学习增长了两个百分点,如果将机器学习和数据分析整合为“数据科学”,这个占比将会达到28%。

 

对比将Python作为主要开发语言和辅助开发语言,web开发差距最大(29% vs 17%)。对于机器学习和数据分析来说,没有明显差别。

 

Python3渗透率

 

Python3还是Python2?

 

由于Python2将于2020年停止更新维护,所以越来越的使用者迁移到了Python3,从下图可以看出,有84%的用户使用了Python3.

 

640?wx_fmt=png

640?wx_fmt=png

640?wx_fmt=png

 

Python3渗透率

 

在调查中发现,82%的Web开发人员使用Python 3,而在数据科学这一领域Python3的渗透率高达90%。

 

640?wx_fmt=png

 

 

640?wx_fmt=png

 

原因可能是Web开发人员仍有大量遗留代码需要维护,而借助于人工智能的热度,数据分析和机器学习人员不断加入了Python 3的阵营。

 

Python安装和更新

 

71%的受访者从python.org或OS提供的包管理器(如APT和Homebrew)安装Python。 这与2017年的结果非常相似。

 

640?wx_fmt=png

 

你使用以下工具隔离Python开发环境吗?

 

在开发或部署阶段隔离Python环境已经是很长一段时间以来的最佳实践。 毫无疑问,pipenv和较低级别的virtualenv是创建和管理新的Python环境的两个最常用工具。 令人惊讶的是,21%的Python用户仍未接受这种做法。

 

640?wx_fmt=png

 

Python框架、库和技术

 

与前一年相比,受访者中Flask的使用量增长了15个百分点,今年Flask已成为最受欢迎的Web框架。 45%的受访者(2017年为41%)选择了Django。

 

Web框架

 

640?wx_fmt=png

 

数据科学框架和库

 

最流行的数据科学框架和库是:NumPy,Pandas,Matplotlib和SciPy。 特定于机器学习的库,如SciKit-Learn,TensorFlow,Keras等也非常受欢迎,这与机器学习领域的快速发展密切相关。

 

640?wx_fmt=png

 

通用框架和库

 

超过一半的Python用户使用了Requests。 Pillow也很受欢迎。

 

640?wx_fmt=png

 

云平台

 

55%使用云平台的Python用户更喜欢AWS。Google Cloud Platform排在第二位,其次是Heroku,DigitalOcean和Microsoft Azure。大约三分之一的受访者不使用任何云解决方案。

 

如何在云平台运行代码? (多选)

 

640?wx_fmt=png

 

如何在云平台上进行开发?

 

640?wx_fmt=jpeg

 

开发工具

 

操作系统

 

近三分之二的受访者选择Linux作为他们的开发环境操作系统。

640?wx_fmt=png

 

测试框架

 

640?wx_fmt=png

 

最受欢迎的单元测试框架是pytest,然后是unittest。 其他单元测试框架受欢迎程度一般。 不过35%的Python用户不使用任何测试框架,并且可能没有测试他们的代码。 在上边“隔离Python开发环境”部分中,我们发现大约五分之一的Python用户不使用Python隔离。

 

数据库

 

大多数人使用免费或开源数据库,如PostgreSQL,MySQL或SQLite。由于大量的Python用户正在进行某种形式的机器学习或数据工程,导致MongoDB和Redis等非关系型数据库也非常受欢迎。

 

640?wx_fmt=png

 

ORM

 

两个最流行的ORM是SQLAlchemy和Django ORM,它们与两个领先的Web开发框架:Flask和Django的流行度相匹配。

 

640?wx_fmt=png

 

大型数据工具更有可能被机器学习工程师使用,这就是为什么76%的受访者没有选择任何工具。

 

640?wx_fmt=png

 

半数受访的Python用户不使用任何CI(持续集成系统)解决方案。最受欢迎的三个CI解决方案是:Jenkins, Gitlab CI和Travis。

 

640?wx_fmt=png

 

配置管理方面,大部分Python用户不使用配置管理工具。

 

640?wx_fmt=png

 

编辑器和IDE

 

为了找到开发者们最喜欢的编辑器和IDE,我们将该问题设置成了单选。通过数据了解到,

 

PyCharm是最受欢迎的Python开发工具,PyCharm Professional和Community版本的合计份额为35%。 有趣的是,VS Code从2017年的7%上升到2018年的16%,成为第二最受欢迎的Python开发编辑器。 很可能是因为VS Code的快速增长,许多其他编辑的用户份额减少了。

 

Web开发人员与数据科学家的编辑偏好略有不同。 他们比数据科学家更喜欢PyCharm,VS Code,Vim和Sublime,而许多数据科学家更喜欢Jupyter Notebook作为他们的主要工具。

 

640?wx_fmt=png

640?wx_fmt=png

640?wx_fmt=png

 

Python开发中,相对流行的工具和特性包括版本控制,代码自动完成,代码重构,编写单元测试以及使用Python项目的虚拟环境都占据了最高点。

 

其他流行的工具和功能包括SQL数据库,调试和代码linting。 NoSQL数据库,Python分析器和代码覆盖工具使用最少。

 

640?wx_fmt=png

 

开发者职业相关和使用情况

 

超过一半的Python用户是全职工作,19%是学生,13%是半自由或自由职业者。 与2017年相比,2018年受访用户中学生人数明显减少,就业人数更多。

 

640?wx_fmt=png

 

工作角色

 

73%的受访用户是开发者或者程序员。12%的其他选项中,填写最多的是数据科学家、运维、研究者和教师。

 

640?wx_fmt=png

 

涉及项目数量

 

17%的Python用户只做一个项目,42%的用户同时做多个项目。

 

640?wx_fmt=png

 

团队开发还是独立开发?

 

640?wx_fmt=png

 

团队规模

 

640?wx_fmt=png

 

公司规模

 

640?wx_fmt=png

 

受访Python用户公司的所属行业

 

640?wx_fmt=png

 

IT经验

 

640?wx_fmt=png

 

年龄分布

 

640?wx_fmt=png

 

更多报告内容,请见报告原文

https://www.jetbrains.com/research/python-developers-survey-2018/

 

(本文为Python大本营翻译文章,转载请联系微信1092722531)

如何挑战百万年薪的人工智能!

https://edu.csdn.net/topic/ai30?utm_source=csdn_bw

 

群招募

 

扫码添加小助手微信,回复:公司+研究方向(学校+研究方向),邀你加入技术交流群。技术群审核较严,敬请谅解。

640?wx_fmt=jpeg

 

推荐阅读:

                     640?wx_fmt=png

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值