vlambda博客
学习文章列表

一篇文章讲清关于Python的一切

这两年,Python势头持续增长,在多个网站发布的最新编程语言排行榜中,Python都已赶超Java。

截图自IT之家


   Python崛起已经是一个不争的事实,随之而来的是,越来越多的人开始抱怨找不到工作。

其实Python应用非常广泛,比如在Web领域,有很多知名的互联网公司就是用Python开发,比如知乎,果壳,豆瓣等……。

目前几个比较流行的领域,也都有它的用武之地。

云基础设施-Python/Java/Go

DevOps-Python/Shell/Ruby/Go

网络爬虫-Python/PHP/C++

数据分析挖掘-Python/R/Scala/Matlab

机器学习-Python/R/Java/Lisp

一篇文章讲清关于Python的一切

Python应用如此广泛,为什么还这么多人找不到工作?

究其原因,无非是市场冷静下来的优胜劣汰罢了。程序=算法+数据结构。但现在大多数人学习Python,本质上都只是在学习使用一个工具,而不是在学习编程思想。

只要能力匹配,Python高级工程师还是非常受市场青睐的。

那已经学习完Python基础语法的我们,

该如何实现Python进阶呢?

想提高技能,首先得问问自己想要用Python来做什么?Github上@骆昊 把目前学Python后可能的就业方向分了几个领域,并把每个领域需要的技术作了一个简单的关键词摘要。

说明:以下数据参考了主要的招聘门户网站以及职友集

一篇文章讲清关于Python的一切

弄清了自己将来要做的方向,就可以开始有针对性的学习了。下面安利给大家一些Python学习资源,包含入门资料。

1. Python官网

www.python.org

推荐理由:这里除了可以下载安装Python,还有很多关于Python内容的优秀资源。


2. 廖雪峰Python教程

https://www.liaoxuefeng.com/wiki/1016959663602400/1016959856222624

推荐理由:他的教程有配套视频资源。


3.“从新手到大师”的百天之路

https://github.com/jackfrued/Python-100-Days

推荐理由:课程很系统,很全面。这是一位在Github上,名叫骆昊(jackfrued)的资深程序员,为读者规划的一条从“从新手到大师”的百天之路!这个项目已经在GitHub摘下59370星。

一篇文章讲清关于Python的一切

还有CSDN的知识图谱。

一篇文章讲清关于Python的一切

来自CSDN

4. Python参考书籍

一篇文章讲清关于Python的一切

https://github.com/jackfrued/Python-100-Days


5. Python练手项目 *

https://github.com/mahmoud/awesome-python-applications

推荐理由:Github上有大量的优质开源项目,其中不乏优质的Python项目,它对这些优质的资源进行了归类并提供了传送门。

//////////

就像上面提到的那样,已经入门Python的人,接下来首先需要学习的是:数据结构与算法。

下面分享两本口碑爆棚的Python算法书。

1. 算法图解

一篇文章讲清关于Python的一切

全书涵盖400多个示意图,生动介绍了算法的执行过程。展示不同算法在性能方面的优缺点,教会你用常见算法解决每天面临的实际编程问题。

“你渴望像看喜欢的小说一样学习算法吗?如果是,本书正是你梦寐以求的!”

——Sankar Ramanathan,IBM Analytics

豆瓣读者评论:

一篇文章讲清关于Python的一切

2. Problem Solving with Algorithms and Data Structures Using Python SECOND EDITION

一篇文章讲清关于Python的一切

“Python算法入门最佳!每一页都值得读!一边翻翻这本书一边刷题开始了我*真正*对编程的入门和喜爱!”

这是豆瓣读者给这本书的评价。它还有很多好评,比如亚马逊4.3星好评。

豆瓣评分9.3等。

这是一本用Python描述数据结构与算法的开山之作!能让你洞彻数据结构与算法,真正精通Python。

如果把编写代码比作行军打仗,那么要想称霸沙场,不能仅靠手中的利刃,还需深谙兵法。Python是一把利刃,数据结构与算法则是兵法。只有熟读兵法,才能使利刃所向披靡。

它还是一本被众多高校采用的经典计算机科学教材,一本能真正帮技术人员解决编程问题的“答案之书”。

你肯定在学习解决问题的基本方法上投入过大量的时间,并且相信自己拥有根据问题描述构建解决方案的能力。你肯定也体会到了编写计算机程序的困难之处。大型难题及其解决方案的复杂性往往会掩盖问题解决过程的核心思想。

计算机科学被认为是一门利用计算机来解决问题的学科,了解数据结构与算法是透彻理解计算机科学的前提。这本书让我们可以掌握数据结构与算法的基本思想。需要资料回复:5。