Python开发者年度调研,结果出乎意料!
来源商业新知网,原标题:Python开发者年度调研:一半Python用户也用JS,2/3选择Linux系统
作为高级编程语言,Python的受欢迎程度近几年一直在往 上涨。每年,Python官方都会针对开发者社区做一次年度报告,统计当年的发展情况,并发布调研报告。
今年也不例外,有超过150多个国家的2万多名开发人员加入了这场深入调查,刚刚发布的报告通过7个角度对Python的使用现状、趋势与未来进行了解读。

以下是几个最新的趋势:
1、使用Python作为主语言的开发人员中,有一半的用户也使用JavaScript。Python也经常混搭HTML/CSS,Bash/Shell,SQL,C/C++和Java一起使用。
2、Python用于数据分析比用于Web开发更广泛,数据分析占比58%。
3、84%的用户已经使用Python3,Python2的比例仅为16%。2017年Python3的使用率只有75%。
4、Flask和Django是Web开发人员中流行度最高的框架,两者份额相差无几,但都甩其他Python Web框架“好几条街”。
5、NumPy,Pandas,Matplotlib和SciPy是最受欢迎的数据科学框架和库。机器学习专用的库如SciKit-Learn,TensorFlow,Keras等也很受欢迎。
6、AWS是Python开发人员最受欢迎的云平台,其次才是Google Cloud Platform,Heroku,DigitalOcean 和Microsoft Azure。
7、在2018年,运维开发者数量明显增加(与2017年相比增加了8个百分点)。在使用Python作为辅助语言的Python用户中,运维已经取代了Web开发成为第一名。
8、PyCharm的专业版和社区版是最受欢迎的Python 开发工具。VS Code已从2017年的7%增加到2018年的16%,成为Python 开发的第二大最受欢迎的编辑器。
9、几乎2/3的Python开发人员选择Linux作为他们开发时的操作系统。
一起来看详情。
84%的Python用户将其作为主语言

Python在开发者中的受欢迎程度确实不假。
关于是否把Python作为第一编程语言的问题,官方调查显示:在调查中,84%的Python用户使用Python作为他们的第一编程语言,16%作为第二语言。这与2017年的数据分布略有不同,当年的情况是:79%用户使用Python作为主语言,21%作为第二语言。

使用Python的编程人员,有一半的人也同时使用JavaScript。从上图还可以看出,2018年的数据和2017年的数据相差无几。一些有趣的现象是:Shell从2017年的36%增长到2018年的45%,Go和SQL都增长了2%,而C/C++,Java和C#等语言的占比减少了。
更多用户使用Python做数据分析

你是出于什么目的使用Python?
仅出于个人、教学和副业目的的比重和工作需要所占的比重相差不多,分别为21%、19%。占比最多的是是那些工作和个人目的兼顾的用户人群。

那么多数用户用Python来做什么呢?
统计显示,数据分析成为了使用者最常用Python的目的,web开发已然失去了霸主地位,虽然,份额从17年的49%上升到到17年的52%,但是增长幅度显然不如一年8个百分点的数据分析。接下来的排名分别是:运维/系统管理/自动脚本、机器学习、网页解析和爬虫、软件测试/自动化测试、教学目的、软件原型、网络编程、桌面开发、电脑绘图、嵌入式开发、游戏开发、移动端开发、多媒体应用开发、其他

关于你用Python做什么,还有个单选题,在这个问题中,受访用户只能选择一个选项。乍一看,Web开发27%的份额占据老大的地位,完虐数据分析的17%。但是,别忘了,数据分析和机器学习加起来可以大致看成“数据科学”,这一领域有28%的份额。

Python3的用户占比达84%

如上,Python3的使用率占84%,Python2的使用率占比16%。在2017年,这组数据是75%vs25%。
值得一提的是,Python2的下降,是因为它不再积极开发、没有获得新功能,并且其维护将会在2020年停止。

做数据分析的用户,有90%用的是Python3,web有82%,运维则有81%。
PYTHON 框架、库和技术:Flask最受欢迎

WEB 框架
与上年相比,Flask的使用量增长了15个百分点,所以,Flask 已成为2018年最受欢迎的Web框架。当然,也有45%的受访者(2017年为41%)选择了Django。

数据科学框架和库
根据统计,最流行的数据科学框架和库是:NumPy,Pandas,Matplotlib和SciPy。机器学习领域的库,如Scikit-Learn,TensorFlow,Keras等,也非常受欢迎,这与机器学习越来越流行有关。

通用的框架和库
上面是通用的Python库排名。超过一半的Python用户使用了Requests。Pillow也很受欢迎。五分之一的Python用户使用了scrapy。

云平台
55%使用云平台的Python 用户更喜欢AWS。Google Cloud Platform 排在第二位,其次是Heroku,DigitalOcean 和Microsoft Azure。大约三分之一的受访者不使用任何云平台。
除此之外,OpenStack和Linode各占6%,OpenShift占3%,Rackspace占2%,相对来说,这些平台比较小众了一些。
开发工具:三分之二的受访者选择Linux

操作系统
根据统计,近2/3的受访者选择Linux作为他们的开发环境操作系统。
当然,根据官方说法,对于这个问题,允许多选。所以无法得到系统流行度的结论。

测试框架
单元测试框架pytest排第一,然后是unittest。其他单元测试框架和前两个差距有点大。
最后,有35%的Python用户不使用任何测试框架,可能是没有测试他们的代码吧!

数据库
大多数人使用免费或开源数据库,如PostgreSQL,MySQL 或SQLite。
MongoDB和Redis 等非关系型数据库也非常受欢迎,因为非常多的Python用户正在进行某种形式的机器学习以及数据科学。

大数据工具
机器学习工程师更有可能使用大数据分析工具,因此76%的受访者没有选择任何工具。据统计,Spark以12%的份额占据了第一名,紧随其后的是Hadoop和Kafka。

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

Python开发时使用的特性
工具和功能的受欢迎程度显而易见:版本控制、代码自动补全、代码重构、编写单元测试以及使用Python 项目的虚拟环境都是必不可少的功能。
据官方说法,2018年受访者中学生较少、经验丰富的开发人员较多,只能得出结论:在专业团队中工作的人越长,他们拥有的经验越多,他们使用的工具和专业技术就越多。
工作人数增加,学生用户减少

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

职业角色
这是个多选题,受访者可以选择多个工作角色,所以总数大于100%。根据统计大约3/4的人是开发人员,几乎1/5的人是数据分析师、架构师或团队负责人。其他项中占据12%,里面包括数据科学家、运维、研究员和教师等。

工作经验:有25%的用户,工作11年以上

年龄范围:年龄在21~29岁之间的用户最多。30岁以上的也占比1/3

上图不适合Python全部用户的分布图,而是受访者的分布图,官方说法,此次调查涉及150个国家,2万多开发人员,其中21%生活在美国,中国受访者只占了4%。

公司所属行业:在“其他”选项中最常列出的行业是零售业,能源业和媒体业。
另外,还有几个关于公司的统计。

团队规模

Python开发者年度调研,结果出乎意料!的更多相关文章
- 2018 Python开发者大调查:Python和JavaScript最配?
在2018年秋季,Python软件基金会与JetBrains发起了年度Python开发者调查. 报告的目的是寻找Python领域的新趋势,帮助开发者深入了解2018年Python开发者的现状. 该报告 ...
- 2016 年 Python 开发者调查结果
1.在团队中工作 vs 独立工作 有趣的是,半数的受访者大部分时间在团队中工作,而另外半数的受访者则独立的做项目. 在公司中工作 vs 独立从事自己的项目 大约80%的受访者告诉我们,他们在公司里面工 ...
- Github上Python开发者应该关心的Repo
carbaugh/lice lice : Generate license files for your projects 一个用来为你的项目生成许可证的工具.这下可方便了,不用手工的去修改了! co ...
- Python开发者须知 —— Bottle框架常见的几个坑
Bottle是一个小巧实用的python框架,整个框架只有一个几十K的文件,但却包含了路径映射.模板.简单的数据库访问等web框架组件,而且语法简单,部署方便,很受python开发者的青睐.Pytho ...
- Python开发者最常犯的10个错误
Python是一门简单易学的编程语言,语法简洁而清晰,并且拥有丰富和强大的类库.与其它大多数程序设计语言使用大括号不一样 ,它使用缩进来定义语句块. 在平时的工作中,Python开发者很容易犯一些小错 ...
- 【译】JavaScript 开发者年度调查报告
截至目前有超过了 5000 人参与了(该次调查),准确的说是 5350 人.我迫不及待的想要和大家分享一下这次调查的细节.在分享之前我想要感谢参与调查的每一个人.这是 JavaScript 社区一个伟 ...
- PyConChina2016 北京站 献给Python开发者
开源编程语言Python近年来在互联网.游戏.云计算.大数据.运维.企业软件等领域有非常多的应用.今天小编就为大家推荐一场Python开发者的盛会:PyConChina2016(北京)! PyCon大 ...
- 强大的jupyter,python开发者的福音
jupyter是一种交互式计算和开发环境的笔记,ipython命令行比原生的python命令行更加友好和高效,还可以运行web版的界面,支持多语言,输出图形.音频.视频等功能. 一.安装 pip3 i ...
- Python 开发者在迁移到 Go(lang) 时需要知道哪些事?
[编者按]本文最早由 Repustate 发布,主要介绍将代码迁移至 Go(lang) 时的注意事项.文章系国内 ITOM 管理平台 OneAPM 编译呈现,以下为正文. 这是一篇讲述将大块 Pyth ...
随机推荐
- Python开发工程师技术手记
Python基础篇 PythonPEP8规范 Python历史与安装 Python注释 Python变量以及类型 Python标识符和关键字 Python输出 Python输入 Python运算符 P ...
- Vue.js中ref ($refs)用法举例总结
原文地址:http://www.cnblogs.com/xueweijie/p/6907676.html <div id="app"> <input type=& ...
- C# Json 和对象的相互转换
Json 和对象的相互转换 /// <summary> /// Json 和对象的相互转换 ——需引用using Newtonsoft.Json; 即:Jsonnet.net..... / ...
- RAMOS (内存操作系统)-无忧百科(不断完善中)
RAMOS (内存操作系统)-无忧百科(不断完善中) - RAMOS - 无忧启动论坛 - Powered by Discuz! http://bbs.wuyou.net/forum.php?mod= ...
- 通过 Git 上传代码到 GitHub 必要操作详解
目录 Git 介绍 起步 下载 配置 准备 在 GitHub 上创建 SSH Key 提交 修改代码 更多信息 Git 欢迎来到 Git 的学习. 介绍 首先先了解一下 Git. Git,是一个开源的 ...
- Ubuntn16.04.3安装Hadoop3.0+scale2.12+spark2.2
Ubuntn16.04.3安装Hadoop3.0+scale2.12+spark2.2 对比参照此博文.bovenson 前言:因为安装的Hadoop.Scale是基于JAVA的应用程序,所以必须先安 ...
- MemCache在网站中的使用
MemCache安装好后,网站一直没法使用,后来查找资料,发现需要在配置文件里写几行代码,如下所示 <enyim.com> <memcached protocol="Tex ...
- shell编程变量介绍与表达式详解
shell变量简介 变量是任何一种编程语言都必不可少的组成部分,变量用来存放各种数据.脚本语言在定义变量时通常不需要指明类型,直接赋值就可以,Shell 变量也遵循这个规则. 在 Bash shell ...
- C#实现json压缩和格式化
json作为常用数据文件,为了传输的效率,在传输前要进行压缩,而在传输后要进行格式化,以便阅读.下面是使用C#完成的格式化和压缩代码. public static string Compress(st ...
- 通过ldap验证svn服务
1.简单介绍: 这里需要介绍一点的就是svn服务器的验证是需要通过SASL机制的,那么SASL全称为(Simple Authentication and security Layer),是一种用来扩充 ...