明天想聊聊 Python 在算法、后端、量化工作中的利用,该如何去学习呢?
自己是非计算 Python 业余(天坑之一),大四开始学 Python,一路过去摸爬滚打,当初在某行业头部企业做大数据分析,常常用到 Python 解决数据。
Python 当初简直是应用人数最多的编程语言,次要是因为它在各个领域都有利用,十八般武艺尽管说不上样样精通,但至多是有拿得出手的货色。在国内,Python 大略从 2017 年开始,因为 AI、大数据的衰亡,逐步网红化,备受非 IT 从业者的吹捧,当然也催生一大批教育培训。
很多人在说 Python 找不到工作,花钱去学的都是韭菜。其实我置信大部分人学习 Python,并不是指望着靠 Python 去找工作,而是解决问题,造就本人的编程能力,作为加分项。至于哪些岗位须要 python,这就是咱们要聊的问题。
可能用到 Python 的工作有哪些?
我以我高中、大学的几个同学的经验为例,别离介绍下他们用 Python 的场景。
1、同学 A:TOP3 电商平台 NLP 算法工程师
他是校招进去的,做 UGC 内容的文本开掘,去剖析电商用户的评论、客服、问答等数据,给商品举荐、智能客服等场景做决策。这是属于纯正的算法岗了,在大厂里那是相当吃香,校招打包价都快 50。
面试的时候,对用哪门语言其实并没有严格限度,Python、Java、C++ 都能够,然而须要手写算法,也会考下面几种框架的应用。
同学 A 说他们组当初用到的技术栈是 NLP、深度学习、大数据,像 nltk、tensorflow、pytorch、hadoop、spark 之类,都是主力工具。组里大部分人都用 Python,有少部分大佬用 C ++,总得来说是能够跑就行。
我问同学 A 为什么用 Python,他笑着说了四个字“人生苦短”啊,Python 写脚本、做测试、跑数据切实是太不便,尽管跑算法没有 C ++ 快,然而并不会带来很大差别,因为他们不须要实时去出后果。
而且 Python 第三方库有大量的 NLP、机器学习工具,NLP 畛域像 nltk、Pattern、Gensim 等,机器学习像 sklearn、keras、tf 等,集成得十分好,拿来就用。
2、同学 B:某头部自主车企 后端开发工程师
同学 B 是原来在乙方软件公司工作,次要负责车机软件的开发,起初不想卷去了甲方做 web 平安后端,但发现活一点没变少,可能这几年汽车电子倒退太快,都在更新迭代。
当初车企招聘比拟青眼计算机背景的候选人,许多在互联网裁员大潮中全身而退的技术人去了车企做开发、做产品,其实也是个不错的抉择,赶上新能源倒退的时机。
他们做的平安相干业务后端开发,平时次要用到 Django、Django RESTFramework、docker 等框架,还有 MySQL、MongoDB、Redis 等数据库,基本上都是基于 Python 去做开发。
说来也奇怪,平安产品始终是 C /C++ 为主,占据绝大部分场景,为什么他们会用到 Python?我这样问同学 B。
他说你还是不理解,平安畛域 C /C++、Java、Python 始终是三大支流技术栈,像 NTA、防火墙、IDS、IPS 都会用到 Python,一些小型的后端服务也会采纳 Python 进行开发。
3、同学 C:一家小型基金治理公司 量化分析员
同学 C 是在英国待过一年,回国前面了好几家大券商、大基金公司,都止步在技术面,起初进了一家上海本地的一家小型基金治理公司,做 CTA 高频量化模型开发,平时搞搞交易策略的研发、调试、优化、保护及监控。
他说过后进来也是想锤炼下技术能力,为前面去大厂铺路,加上业绩的压力,所以根本每天 996,写策略写到麻痹。平时还要做数据的收集和解决、历史数据回测以及危险收益评估等,总之把人用到极致。
因为我不太懂 Python 在金融行业的利用,于是问他做量化肯定要用 Python 吗?
他笑了笑说,你能够去招聘网站上搜搜看,金融行业做剖析搞钻研的当初清一色的须要编程能力,其中大部分要求 python,国外像摩根、花旗这样的大公司基本上把 python 当作硬性门槛了。
量化畛域根本是以 C ++ 和 Python 为主,C++ 个别用来写大型交易框架,稳定性强,而且速度快,Python 则用来写策略、跑算法、验证模型,也反对一些小型利用的编写,对 C ++ 库进行包装等。
这次要是因为 Python 生态有大量的金融数据分析工具,像 talib、pandas、numpy 等,能够疾速援用。
这三位同学是我身边拿 Python 当主力工具的典型代表,其实能够看到都是须要综合能力的岗位,NLP 要求算法、后端开发要求平安教训,量化要求会写策略。所以根本不是说会 Python 就可能找到适合的工作。
对 Python 能力的要求是什么样的?
Python 是用来解决业务问题的,所以不同岗位的要求必然不同,但前提都是要会纯熟应用 Python 语法,对数据类型、逻辑语句、函数模块、类、过程线程、错误处理、网络编程、正则表达式 … 这些务必要一目了然。
这里倡议大家去官网文档一一对照着去学习:
其次针对不同岗位要学习不同的 Python 框架,这些框架的难度一点也不用 Python 自身容易,有些大的框架比方 tensorflow 其学习老本曾经远远超出 Python 语法。
爬虫岗:requests、xpath、beautifulsoup、scrapy、selenuim
数据分析岗:pandas、numpy、sklearn、matplotlib、pymysql
算法岗:sklearn、keras、tensorflow、pytorch
nlp 岗:nltk、Gensim、Pattern
大数据岗:pyspark、pyflink
BI 岗:superset、dash
web 岗:Django、Flask、Tornado(知乎用这个写的)、fastapi
测试运维岗:os、sys、selenium、pytest、appium、unittest
前端岗:PyQt、PyGUI、pyecharts、dash、plotly
其余办公用:xlwings、pandas、pptx、docx、email
以上这些是对应岗位须要用到的工具,也就是 python 的第三方库,大家能够一一对应看看本人须要什么,而后针对性的去学习。
以上就是本次分享的所有内容,想要理解更多 python 常识欢送返回公众号:Python 编程学习圈 ,发送“J”即可收费获取,每日干货分享