合格的Python工程师需要达到怎样的编程水平?_惠州计算机Python培训学校
作者:黄君发布时间:2021-05-17分类:惠州计算机学校浏览:822
一、精通是个伪命题
怎样才算精通Python,这是一个非常有趣的问题。
很少有人会说自己精通Python,因为,这年头敢说精通的人都会被人摁在地上摩擦。其次,我们真的不应该纠结于编程语言,而应该专注于领域知识。
比如,你可以说你精通数据库,精通分布式,精通机器学习,那都算你厉害。但是,你说你精通Python,这一点都不酷,在业界的认可度也不高。
再者,Python使用范围如此广泛,一个人精力有限,不可能精通所有的领域。就拿Python官网的Python应用领域来说,Python有以下几个方面的应用:
Web Programming: Django, Pyramid, Bottle, Tornado, Flask, web2py
GUI Development: wxPython, tkInter, PyGtk, PyGObject, PyQt
Scientific and Numeric: SciPy, Pandas, IPython
Software Development: Buildbot, Trac, Roundup
System Administration: Ansible, Salt, OpenStack
如果有人声称精通上面所有领域,那么,请收下我的膝盖,并且,请收我为徒。
既然精通Python是不可能也是没有意义的事情,那么,为什么各个招聘要求里面,都要求精通Python呢?我觉得这都是被逼的。为什么这么说呢,且听我慢慢说来。
二、为什么招聘要求精通Python
绝大部分人对Python的认识都有偏差,认为Python比较简单。相对于C、C++和Java来说,Python是比较容易学习一些,所以,才会有这么多只是简单地了解了一点语法,就声称自己会Python的工程师。
打个比方,如果一个工程师,要去面试一个C++的岗位,他至少会找一本C++的书认真学习,然后再去应聘。Python则不然,很多同学只花了一点点时间,了解了一下Python的语法,就说自己熟悉Python。
这也导致Python的面试官相对于其他方向的面试官,更加容易遇到不合格的求职者,浪费了大家的时间。Python面试官为了不给自己找麻烦,只能提高要求,要求求职者精通Python。
三、怎样才算精通Python
既然精通Python本身是一件不可能的事情,而面试官又要求精通Python,作为求职者,应该达到怎样的水平,才敢去应聘呢?我的观点是,要求精通Python的岗位都是全职的Python开发,Python是他们的主要使用语言,要想和他们成为同事,你至少需要:
1. 能够写出Pythonic的代码(什么是Pythonic的代码,请看我在另一个问题下的回答:怎样才能写出pythonic的代码? - 知乎用户的回答)
2. 对Python的一些高级特性比较熟悉
3. 对Python的优缺点比较了解
这样说可能比较抽象,不太好理解。我们来看几个例子,如果能够充分理解这里的每一个例子,那么,你完全能够顺利通过"精通Python"的岗位面试。
3.1上下文管理器
大家在编程的时候,经常会遇到这样的场景:先执行一些准备操作,然后执行自己的业务逻辑,等业务逻辑完成以后,再执行一些清理操作。
比如,打开文件,处理文件内容,最后关闭文件。又如,当多线程程序需要访问临界资源的时候,线程首先需要获取互斥锁,当执行完成并准备退出临界区的时候,需要释放互斥锁。
对于这些情况,Python中提供了上下文管理器(Context Manager)的概念,可以通过上下文管理器来控制代码块执行前的准备动作以及执行后的收尾动作。
我们以处理文件为例来看一下在其他语言中,是如何处理这种情况的。 Java风格/C++风格的Python代码:
Pythonic的代码:
四、结论
我这篇文章很长,但是,我相信对很多人都会有帮助。这里想说的是,Python是一门编程语言,使用范围非常广泛,大家不要去追求精通Python程序语言自身,而应该将精力放在自己需要解决的实际问题上。
其次,绝大多数人对Python的认识都存在误区,认为Python很简单,只是简单地了解一下就开始写Python代码,写出了一堆很不好维护的代码,我希望这一部分人看到我的回答以后,能够回去重新学习Python。
最后,对于一些同学的疑虑——招聘职位要求精通Python,我的回答是,他们并不奢望招到一个精通Python的人,他们只是想招到一个合格的工程师,而大部分的Python工程师,都,不,合,格!
Python有哪些岗位就业?
学JavaWeb的有必要学PythonWeb么?目前市场开发的python更多是测试和自动化岗位吧?web市场中,大型的项目被java占领,小型的有php,python如何在web市场分一杯羹?优势劣势在哪?python在其他方面,比如爬虫啊,数据挖掘等方面的就业前景和学的要求怎么样?麻烦老师解答一下,谢谢
讲师:这个不是有没有必要的问题, 不论用什么语言都可以开发出web系统, python, php, java都行,如果单就从实现功能的角度来讲都没有区别, 都能实现, 但是要考虑到开发效率, java是完全没法和python比的, 比如一个小的系统, 用java开发,你要去打开ide,配置maven, 下载spring等等框架配置好开发环境,编写代码然后编译成class之后再运行,这些其实可能一个python文件都能搞定的事情,等到你把开发环境搭建好,python都已经开发完了。 当然这里只是拿了一个小系统做例子, 大系统也是一样的, 这里只是讨论了一个开发效率问题。 如果单就从开发功能上来讲, 用javaweb开发出来之后如果你不考虑以后想提升开发效率的话,当然不用去学习python web开发。
目前市场上python的职位远不止测试和自动化岗位, 你如果去做云存储之类的就知道openstack实际上就是用python开发的, 很多只要涉及到这块的都会招python开发。 实际上很多web项目立项之初用java立项的原因都是因为考虑到java人才容易招到而不只是java本身有多大的优势。 实际上很多创业公司开始逐步转向用开发效率高的python和php作为web开发。而且java在web系统方面也在逐渐被python, go 和nodejs蚕食。
python目前在python和数据处理领域几乎都是首选语言,后期随着人工智能时代的来临, 很多公司特别是小公司会急于向数据方面考虑首先第一个要解决的问题就是爬虫爬取数据, 所以数据和爬虫职位近两年应该会逐渐增多。
点击咨询直接了解更多相关资料,我在惠州北大青鸟新方舟等你。
本文内容转载自网络,版权归原作者所有,如有侵权请联系我们进行删除。
标签:惠州计算机软件培训惠州计算件软件开发惠州计算机软件基础惠州计算机Python软件开发惠州Python培训学校惠州Python培训python基础教程python是什么python教程python入门
- 惠州计算机学校排行
- 标签列表
-
- Java (3694)
- 北大青鸟 (3713)
- 软件开发 (3613)
- JAVA (3413)
- UI设计入门 (2093)
- 惠州北大青鸟 (4375)
- 惠州IT培训 (2558)
- UI设计培训 (2090)
- 惠州UI设计培训 (2095)
- 惠州UI设计培训学校 (2090)
- 惠州计算机软件培训 (6260)
- 惠州计算件软件开发 (6260)
- 惠州计算机软件基础 (6261)
- 惠州计算机JAVA培训 (3574)
- 惠州计算机Java软件开发 (3620)
- 惠州计算机JAVA软件开发 (4645)
- 惠州计算机JAVA软件开发学校 (3338)
- 惠州计算机Java软件开发培训 (3338)
- 北大青鸟IT计算机学校 (5048)
- 北大青鸟IT软件学校 (5062)
- 北大青鸟IT学校 (5059)
- 惠州计算机UI设计软件开发 (2088)
- UI设计基础教程 (2088)
- UI设计是什么 (2088)
- UI设计教程 (2088)
- 网站分类
-
- 计算机教程
- 计算机入门
- 职业学校
- 新闻动态
- 专业课程
- 热门技术
- SEO
- 培训教程
- windows
- linux教程
- 系统集成
- 网站开发
- Html5
- 办公软件
- 师资力量
- 热点问答
- 联系我们
- 计算机学校
- 惠州计算机学校
- 河源计算机学校
- 广州计算机学校
- 深圳计算机学校
- 湛江计算机学校
- 佛山计算机学校
- IT计算机培训信息
- 设计专业
- UI
- 影视特效
- 游戏动漫设计
- Photoshop
- AI设计
- 软件教程
- Java技术
- C语言/C++语言培训
- C#
- Python技术
- PHP
- 数据库
- SQL Server
- 网络教程
- 网络安全
- 网络营销
- 软件专业
- 大数据专业
- 前端开发专业
- 软件测试专业
- Python专业
- 软件实施
- 珠海计算机学校
- 初中生学什么好
- 计算机认证
- 文章归档
-
- 2024年12月 (15)
- 2024年11月 (45)
- 2024年10月 (32)
- 2024年9月 (29)
- 2024年8月 (68)
- 2024年7月 (59)
- 2024年6月 (43)
- 2024年5月 (48)
- 2024年4月 (80)
- 2024年3月 (65)
- 2024年2月 (54)
- 2024年1月 (25)
- 2023年12月 (12)
- 2023年11月 (73)
- 2023年10月 (134)
- 2023年9月 (34)
- 2023年8月 (3)
- 2023年7月 (3)
- 2023年6月 (12)
- 2023年5月 (30)
- 2023年4月 (72)
- 2023年3月 (11)
- 2023年2月 (34)
- 2023年1月 (37)
- 2022年12月 (78)
- 2022年11月 (359)
- 2022年6月 (1193)
- 2022年5月 (570)
- 2022年4月 (1567)
- 2022年3月 (982)
- 2022年2月 (54)
- 2022年1月 (182)
- 2021年9月 (308)
- 2021年8月 (1704)
- 2021年7月 (2423)
- 2021年6月 (1806)
- 2021年5月 (1569)
- 2021年4月 (1380)
- 2021年3月 (1255)
- 2021年2月 (709)
- 2021年1月 (1521)
- 2020年12月 (3626)
- 2020年11月 (1646)
- 2020年10月 (1046)
- 2020年9月 (592)
- 最近发表
-
- 东莞信息:2024年长安镇技能创业咖啡节成功举办|||广州计算机软件培训
- 河源信息:本周六百企万岗职等你来市县镇联动大型招聘活动即将开幕!|||计算机培训学校招生
- 茂名信息:茂名组织劳动人事仲裁案件庭审观摩活动|||大学生计算机培训学校
- 茂名信息:茂名市人力资源和社会保障局相继开展诚信宣传四进主题实践活动|||广州市北大青鸟计算机职业培训学校
- 茂名信息:凝心聚力共筑平安茂名市人力资源和社会保障局开展平安建设暨一感两度宣传活动|||大学生计算机培训学校
- 汕头信息:汕头市人力资源和社会保障局开展宪法宣传周活动|||北大青鸟计算机培训中心
- 梅州信息:梅州市人社局开展2024年第四季度诚信文化主题宣传志愿服务活动|||电脑计算机编程培训学校
- 东莞信息:塘厦人社分局联合消防大队开展技工学校等机构消防安全培训|||广州计算机软件培训
- 东莞信息:塘厦塘厦镇成功举办优才服务区第二期业务提升培训班|||计算机软件培训学校
- 东莞信息:2024年横沥镇举办模具设计师职业技能大赛|||广州计算机软件培训