如题,作为一个研究生,你用Python写算法,我觉得你应该是想往大数据,人工智能方面发展。
Python这些年随着大数据人工智能的大爆发也变得流行起来,你想再提升自己Python的水平,我觉得你可以从以下着手!
分布式计算框架spark
Apache Spark是一个计算速度快,易用,支持复杂分析的大数据处理框架,大有取代mapreduce之势。
Python虽说在机器学习和人工智能方面有极好的应用,但是Python有一个大缺陷,不支持分布式计算,但是不要紧,spark提供了极好的Python接口Pyspark,借助他,Python在分布式计算、流计算方面有了极大提高。
另外,spark的核心RDD弹性分布式数据集和Python中pandas中的DataFrame十分相似,可以十分方便的相互转化。所以说spark让Python有了分布式处理大数据集的能力。
除了用Python来写算法之外,还可以用Python来来做web开发,网络爬虫,数据清洗,以及人工智能等。
至于怎么样提高自己的Python水平?给自己规划一条学习路线,然后进行系统的学习,然后出去工作或者是自己接一些项目来做,通过做项目的方式来提升自己,毕竟做项目是综合知识的应用。
了解过“如鹏网”的Python学习路线,可以作为参考,基本上都是慕名而去的。
1、Python基础
2、数据库开发
Python当中学到了算法这个部分,我们就要考虑进阶或者是提升。简单的说一下,Python的进阶流程:了解基本语法--->熟练使用常用的库--->Pythonic--->高级玩法--->看透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
确实当你学了Python的一段时间之后会有一阵不知道如何更快的提高自己的功力。其实Python也是语言的一种,虽然语法很简单,但是内涵真的很丰富,招式非常的多。修炼武功我个人觉得分几个层次:
第一招是语法:算是基本功,熟悉一门语言,语法是最核心也是最基础的,你必须要熟练掌握.好像你学英语,词汇肯定是要有一定的量的.
第二招数据结构:然后你的代码会越写大,你肯定要考虑数据结构,比如你爬取一个网站,你有一堆信息,你如何抽象出来设计最佳的数据模型,减少代码的复杂度.
第三招算法:接着你继续写发现性能上需要优化了。比如处理百万级的数据,处理大量的文件的时候,要降低复杂度,对进程,线程间的调度,优化线程池的调度。
第四招设计模式:再往上走就需要架构,设计模式,提高自己额软件匠艺了,这时候你的代码量数万,几十万了你需要考虑用一些好的设计模式去封装你的代码,隔离子系统,然后提高代码的健壮性和可扩展性。
!
如果题主是准备日后工作找Python相关,那就要看一下具体的方向:
如果是做算法类工作,多刷题,发一些好一点的文章,多注重理论基础,Python反而只是一个工具,面试更注重你的算法基础。
如果是想做web相关的,用Python做后台的公司其实比较少,当然也有,可以看一下Python web的一些框架,做一些小项目,做项目的过程中不断扩展学习。
更多有关人工智能的资讯、深度报道、采访欢迎关注AI中国,无论你是小白还是大神,你想要的这里都有!
作为研究生 用python的工作主要是数据分析岗位
对数据岗来说 除了算法模型之外 还需要的技能有
1 大数据工具
!
研究生应该会写很多论文吧,可以针对自己所学到的技术知识,外加查询一些文献等等,可以向一些媒体机构投稿,一是可以赚取一些稿费,还有就是对自己的毕业答辩或者以后的就业都是很有帮助的。
平时可以写写自己的博客,在博客上不仅可以学到很多大神的技术,还能通过写博客,提升自己的技术。
如果有足够的野心,Python的应用范围是很多的,比如Web应用开发,自动化运维,网络爬虫,大数据分析,图像处理,科学计算,游戏,桌面软件,人工智能等等
有条件的话,可以开始接触一些实战项目,在实战中提高自己的技术水平!
python
最接近人类的语言,学习起来特别容易上手。只会一门语言是不够的,会影响对编程语言的理解。在研究生阶段最好再入门Java或者C,有比较,更易理解Python语言的编程思想,语言的优劣。笔者就是写过一段时间Python,工作需要用了一段时间Java,再回过头用Python,领悟许多。看优秀Python包的源码,建议看Google或者其他的大厂的开源小Python项目,看了不同人的代码风格才知道自己差距在哪。然后,根据实际尝试写一个包发布到
pypi.org
。动手做才能看到忽略的细节。Python写算法,基本上的意思是会调机器学习的scikit-learn、深度学习的TensorFlow等。这些不能帮助理解一门语言的核心思想。建议尝试用Python写一个web项目,做做网页或者写写接口。会做一个服务是日后工作的必修课。
更多的Python算法,欢迎关注公众号(Python视觉算法)
简述:有四个数字,分别是:1、2、3、4
思考:能组成多少个互不相同且无重复数字的三位数?各是多少?
思路:创建一个函数,然后分别设定三个数i,j,k,它们的取值范围都在1到4,并且三个数都不相同,输出1*100+j*10+k,
源代码如下
除了学习算法,也可以学习做界面,做爬虫,做工程,比如做一个网站,基于爬虫进行信息聚集,加工挖掘,然后展示给用户,也可以挖掘做产品,多看看github成熟的项目,看看python和大数据的集成