作为一名研究生,除了可以用python写各种算法之外,还应该如何提高自己的python水平?

扈炀


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

  • System Administration: Ansible, Salt, OpenStack

可以从上述的使用范围来选择深入学习。在Python中文开发者社区可以看到,论坛当中有很多适合提升水平的文章和项目。

推荐书籍:

英语水平过关的话建议看英文原版的,中文翻译的会有写偏差。这本书给出了很多代码的方法和规范。并且作者的理念是把代码当成写文章。第一章开篇就是教我们代码的整洁;第二章的内容是体现本意的命名能让人更容易理解和修改代码;后面还有函数、注释、格式等等的;

如果只是要了解的话,看前面几张就够了。但是书中比较有价值的部分,在于进行重构的时候很多细小的步骤。看这本的话,网上也是有电子版本,并且在各大IT论坛当中有很多人写读书笔记。

提高算效率的技巧

(1)想量化的操作(可以参考书籍《利用Python进行数据分析》)

(2)广播机制(可以参考书籍《Deeplearning深度学习笔记》)

(3)多线程多进程

GIL(全局解释器锁)它让python的多线程无法充分利用多核的优势,但是对于I/O操作频繁的程序,利用多线程带来的优势还是非常明显的。


传智播客


如题,作为一个研究生,你用Python写算法,我觉得你应该是想往大数据,人工智能方面发展。

Python这些年随着大数据人工智能的大爆发也变得流行起来,你想再提升自己Python的水平,我觉得你可以从以下着手!

分布式计算框架spark

Apache Spark是一个计算速度快,易用,支持复杂分析的大数据处理框架,大有取代mapreduce之势。

Python虽说在机器学习和人工智能方面有极好的应用,但是Python有一个大缺陷,不支持分布式计算,但是不要紧,spark提供了极好的Python接口Pyspark,借助他,Python在分布式计算、流计算方面有了极大提高。

另外,spark的核心RDD弹性分布式数据集和Python中pandas中的DataFrame十分相似,可以十分方便的相互转化。所以说spark让Python有了分布式处理大数据集的能力。

web后端

Python有十分多的强大的web后端框架,如Django,flask等,学习这这可以巩固Python的基础,又会使用到Python的高级用法,如装饰器,类及魔法方法,数据库等。

学习spark和web后端的优势

你不可能一直在单机上使用模型,你可能会在大数据框架和网站来部署模型,这需要你了解后端和分布式计算,学习这两方面,既能提升Python水平,也能让你在日后的大数据和人工智能领域如虎添翼。


爱数据的小司机


  1. python

    最接近人类的语言,学习起来特别容易上手。只会一门语言是不够的,会影响对编程语言的理解。在研究生阶段最好再入门Java或者C,有比较,更易理解Python语言的编程思想,语言的优劣。笔者就是写过一段时间Python,工作需要用了一段时间Java,再回过头用Python,领悟许多。
  2. 看优秀Python包的源码,建议看Google或者其他的大厂的开源小Python项目,看了不同人的代码风格才知道自己差距在哪。然后,根据实际尝试写一个包发布到

    pypi.org

    。动手做才能看到忽略的细节。

  3. Python写算法,基本上的意思是会调机器学习的scikit-learn、深度学习的TensorFlow等。这些不能帮助理解一门语言的核心思想。建议尝试用Python写一个web项目,做做网页或者写写接口。会做一个服务是日后工作的必修课。

  4. 最后一条也是最重要一条:学会使用PyCharm,按住“Ctrl”或"Command"后,点击函数,进入代码内部查看。


PythonCoder


除了用Python来写算法之外,还可以用Python来来做web开发,网络爬虫,数据清洗,以及人工智能等。

至于怎么样提高自己的Python水平?给自己规划一条学习路线,然后进行系统的学习,然后出去工作或者是自己接一些项目来做,通过做项目的方式来提升自己,毕竟做项目是综合知识的应用。

了解过“如鹏网”的Python学习路线,可以作为参考,基本上都是慕名而去的。

1、Python基础

2、数据库开发

3、web前端

4、Python web开发及企业项目实战

5、Linux

6、NoSQL

7、数据可视化

8、网络爬虫

9、人工智能


玩着学编程


作为研究生 用python的工作主要是数据分析岗位

对数据岗来说 除了算法模型之外 还需要的技能有

1 大数据工具

学会hadoopbspark这些大数据的工具的使用 这是海量数据处理的必备技能

2 工程接口

为了和其他团队协作 需要熟悉restful api和一些简单的服务器后台的开发经验 还有自动化部署测试的经验 尤其是测试这块 数据岗的测试和开发岗的测试内容完全不一样 不仅仅是功能流程正确 还有逻辑和决策是合理 这是不了解数据的测试做不到的

3 本行业的数据洞察力

除了学习模型 数据分析师还需要补充行业相关的知识 这样才能对业务上的数据有比较好的理解 这样才能选择和设计正确的模型去做分析决策


魔数思


研究生应该会写很多论文吧,可以针对自己所学到的技术知识,外加查询一些文献等等,可以向一些媒体机构投稿,一是可以赚取一些稿费,还有就是对自己的毕业答辩或者以后的就业都是很有帮助的。

平时可以写写自己的博客,在博客上不仅可以学到很多大神的技术,还能通过写博客,提升自己的技术。

如果有足够的野心,Python的应用范围是很多的,比如Web应用开发,自动化运维,网络爬虫,大数据分析,图像处理,科学计算,游戏,桌面软件,人工智能等等

有条件的话,可以开始接触一些实战项目,在实战中提高自己的技术水平!


码农视界


除了学习算法,也可以学习做界面,做爬虫,做工程,比如做一个网站,基于爬虫进行信息聚集,加工挖掘,然后展示给用户,也可以挖掘做产品,多看看github成熟的项目,看看python和大数据的集成


分享到:


相關文章: