简说Python发展及其就业前景
简说python
发展历史
Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言。
python从ABC语言发展起来,受到Modula-3的影响,同时结合了Unix shell和C的习惯
如今python已成为最受欢迎的程序设计语言之一,根据TIOBE提供的编程语言指数走势图可以发现python近些年的占有率一直保持着增长势头。

还是那句口号,人生苦短,我学python
语言特性
Python是完全面向对象的语言
Python的设计哲学是“优雅”、“明确”、“简单”。
尽量写容易看明白的代码,尽量写少的代码,具有限制性很强的语法,使得程序更加清晰和美观。
主要应用领域
- Web和Internet开发
- 桌面界面开发
- 科学计算和统计
- 人工智能
- 软件开发
- 后端开发
2.X与3.X的主要区别
大概来说,3是2的升级版本,就是新手上手程度而言,个人认为3明显比2更为好上手,且其中2中很多长期无人维护的库则在3中已经消失。官网也宣布Python 2.7将于2020年1月1日终止支持。两者的具体差别:
print函数
Python3中print为一个函数,必须用括号括起来;Python2中print为class
print 'python' # Python2.X
print("python") # Python3.X
整除
Python3中/表示真除,%表示取余,//结果取整;Python2中带上小数点/表示真除,%表示取余,//结果取整
# Python2
print '3 / 2 =', 3 / 2 # 结果为1
print '3 // 2 =', 3 // 2 # 结果为1
print '3 / 2.0 =', 3 / 2.0 # 结果为1.5
print '3 // 2.0 =', 3 // 2.0 结果为1
# Python3
print('3 / 2 =', 3 / 2) # 结果为1.5, 两者的差异处
print('3 // 2 =', 3 // 2) # 结果为1
print('3 / 2.0 =', 3 / 2.0) # 结果为1.5
print('3 // 2.0 =', 3 // 2.0) # 结果为1
xrange模块
在 Python 3 中,range() 是像 xrange() 那样实现以至于一个专门的 xrange() 函数都不再存在(在 Python 3 中xrange() 会抛出命名异常)。
unicode
Python 2 有 ASCII str() 类型,unicode() 是单独的,不是 byte 类型。
现在, 在 Python 3,我们最终有了 Unicode (utf-8) 字符串,以及一个字节类:byte 和 bytearrays。
# Python2
str = "我爱北京天安门"
print 'str'
# 输出-> ‘\xe6\x88\x91\xe7\x88\xb1\xe5\x8c\x97\xe4\xba\xac\xe5\xa4\xa9\xe5\xae\x89\xe9\x97\xa8’
# Python3
中国 = 'china'
print(中国)
# 输出 -> 'china'
不等运算符
- Python2.x中不等于有两种写法!=和<>
- Python3.x中去掉了<>,只有!=一种写法
数据类型
- Python3.x去除了long类型,现在只有一种整形——int,但它的行为就像2.x中long
- 新增了bytes类型,对应于2.x的八位串
- dict的.keys()、.items和.values()方法返回迭代器,而之前的iterkeys()等函数都被废弃。同时去掉的还有dict.has_key(),用in来代替它
异常
在 Python 3 中处理异常也轻微的改变了,在 Python 3 中我们现在使用 as 作为关键词。捕获异常的语法由 except exc, var 改为 except exc as var。使用语法except (exc1, exc2) as var可以同时捕获多种类别的异常。 Python 2.6已经支持这两种语法。
- 在2.x时代,所有类型的对象都是可以被直接抛出的,在3.x时代,只有继承自BaseException的对象才可以被抛出。
- 2.x raise语句使用逗号将抛出对象类型和参数分开,3.x取消了这种奇葩的写法,直接调用构造函数抛出对象即可。
- 在2.x时代,异常在代码中除了表示程序错误,还经常做一些普通控制结构应该做的事情,在3.x中可以看出,设计者让异常变的更加专一,只有在错误发生的情况才能去用异常捕获语句来处理。
扩展阅读
其实就全球下载量而言,python2的使用量远远超过python3,在国内多家互联网顶尖公司中python2的使用程度也是远远高于python3。
python2的终止支持不代表我们就不能去学习python2,其实python2种有很多很好的库(但因为长期无人维护在3中无法使用),此外两者间差异其实不算很大,只要注意其中的差别就可以"两开花"。`
国内招聘网站对python相关职位的需求待遇
分析了前程无忧网约100页关于python岗位的数据, 得到了如下的结果
python岗位的薪资一般都在0.8w+
| 薪资 | 提供该工资的公司数量 |
|---|---|
| 1-1.5万/月 | 634 |
| 1.5-2万/月 | 340 |
| 0.8-1万/月 | 268 |
| 6-8千/月 | 259 |
| 1-2万/月 | 255 |
| 0.8-1.5万/月 | 208 |
| 1.5-2.5万/月 | 197 |
| 0.8-1.2万/月 | 147 |
| 0.6-1万/月 | 110 |
| 2-2.5万/月 | 104 |
招聘python岗位的公司集中在北上广深等大城市

主要招聘岗位词云图
可以发现其中较受欢迎的岗位为软件、前后端开发、大数据、运维、算法开发等方向

基于以上的分析,可以说python就业前景是非常可观的,同时伴随着如今人工智能的发展,相信在未来python的应用前景也会越来越广泛。
文章部分内容参考自:
- https://blog.csdn.net/qq_39521554/article/details/80855086
- https://blog.csdn.net/qq_38526635/article/details/81710721
- https://www.runoob.com/python/python-2x-3x.html
- https://blog.csdn.net/God_favored_one/article/details/78926563
- https://blog.csdn.net/u010070526/article/details/81782082
简说Python发展及其就业前景的更多相关文章
- 2019年Python数据挖掘就业前景前瞻
Python语言的崛起让大家对web.爬虫.数据分析.数据挖掘等十分感兴趣.数据挖掘就业前景怎么样?关于这个问题的回答,大家首先要知道什么是数据挖掘.所谓数据挖掘就是指从数据库的大量数据中揭示出隐含的 ...
- java就业前景发展方向分析
随着信息化的发展,IT培训受倒了越来越多人的追捧.在开发领域,JAVA培训成为了许多人的首选!java拥有强大的开发者的数量已超过了之前的900万,将近97%的企业电脑也在运行着java,其下载量每年 ...
- Python的发展历史及其前景
Python的发展历史 1989年,吉姆·范罗苏姆为打发时间,决定为当时正构思的一个新的脚本语言编写一个解释器.作为派森的狂热粉丝,他以Python命名该项目,使用C进行开发. 1991年发布Pyth ...
- Java就业前景怎么样?学了后好找工作吗?
不知道大家对Java就业前景了解多少.随着信息化的发展.IT培训受倒了越来越多人的追捧.在开发领域,JAVA培训成为了很多人的首选!JAVA应用广泛.JAVA培训就业前景良好. 眼下.尽管JAVA人才 ...
- 简学Python第二章__巧学数据结构文件操作
#cnblogs_post_body h2 { background: linear-gradient(to bottom, #18c0ff 0%,#0c7eff 100%); color: #fff ...
- 乐橙谷浅析JAVA程序员就业前景
不知道大家对Java就业前景了解多少.随着信息化的发展,IT培训受倒了越来越多人的追捧.在开发领域,JAVA培训成为了许多人的首选!JAVA应用广泛,JAVA培训就业前景良好!目前,虽然JAVA人才的 ...
- Web前端开发的就业前景怎么样,薪资待遇如何
信息技术的迅速发展,使IT技术者们赶上了一个百年难遇的好机会,尤其是国家出台了“互联网+”的政策后,更是催生了IT行业的就业空间,使其呈现爆发性增长. 如今,微信逐渐成为了大家主要的交流工具,随着各种 ...
- Web前端开发工程师的就业前景
Web前端开发工程师的就业前景 Web前端开发工程师是一个全新的职业,在IT行业真正受到重视的时间不超过5年.因此,大家越来越关心web前端工程师前景怎么样?web前端工程师就业如何?Web前端开发是 ...
- Python 发展历史
1. Python发展历史 起源 Python的作者,Guido von Rossum,荷兰人.1982年,Guido从阿姆斯特丹大学获得了数学和计算机硕士学位.然而,尽管他算得上是一位数学家,但他更 ...
随机推荐
- Gradle——创建简单的项目
项目 & 任务 Gradle 的一切都是基于项目和任务的. 构建由一个或多个项目组成.项目的概念很抽象,它取决于你要用Gradle 做什么 .项目可以是 一个 Jar 库或者一个 web 程序 ...
- bilibili弹幕爬取与比对分析
最近受人之托研究了下b站的数据爬取做个小工具,最后朋友说不需要了,本着开源共享的原则,将研究成果与大家分享一波,话不多说直接上干货 需求分析 给定up主uid和用户uid,爬取用户在该up主所有视频中 ...
- SpringBoot:高并发下浏览量入库设计
一.背景 文章浏览量统计,low的做法是:用户每次浏览,前端会发送一个GET请求获取一篇文章详情时,会把这篇文章的浏览量+1,存进数据库里. 1.1 这么做,有几个问题: 在GET请求的业务逻辑里进行 ...
- 分享各大CMS采集资源站网址合集
分享各大CMS采集资源站网址合集 http://www.172zy.xyz/ 172云资源 http://www.dbzyz.com/ 豆瓣云资源 http://www.gaoqingzy.com/ ...
- 随笔编号-16 MySQL查看表及索引大小方法
目标:阿里云OS数据库DMS,单个主库最大存储空间为2T.最近公司业务扩展很快,一天数据量达到7.9G左右.要求备份清理历史数据,备份到其他磁盘. 准备: 如果想知道MySQL数据库中每个表占用的空间 ...
- UVA10831题解
Gerg's Cake Gerg is having a party, and he has invited his friends. p of them have arrived already, ...
- 🕸捕获与改写HTTPS请求
前言 本文站在 macOS 用户的角度下,分享一下对 HTTPS 进行请求拦截.对响应进行修改的经验. 要注意的是,本文介绍的工具虽然一定程度上对 Windows 用户也适用 ,但并非所有工具都是免费 ...
- Fiddle用于移动端抓包
一.什么情况下可以用到 1.调查参考其他移动端网站的抓包,他们传输方式.如微信上京东的智能机器人的包.移动端的请求接口格式.如何实现的效果等. 2.调试本地移动端页面的测试页面效果是否有问题.如:页面 ...
- Fire Balls 07——砖块的淡出,消失以及砖塔的下落
版权申明: 本文原创首发于以下网站: 博客园『优梦创客』的空间:https://www.cnblogs.com/raymondking123 优梦创客的官方博客:https://91make.top ...
- visual studio code 应用到.net core 实战
鉴于visual studio 2019 近期动不动卡顿与切分支后F12等功能失效的问题,开始考虑用visual studio code 代替他,对,你没有看错,就是代替visual studio 这 ...