我们学Python时我们在学什么,不看亏大了

这是一篇来自简书的文章,作者详细讲解了Python入门学习的一些困惑。

虽然有时觉得Python简单得不像编程语言,知乎上也有人说,“requests 好用的让人想哭”。但当我们学习一门编程语言时,要学习哪些内容,怎么学习,还是很值得深入探究的。

先看一下Python官网上的说明:

我们学Python时我们在学什么,不看亏大了

powerful, fast, easy, 对,这就是赤果果的广告。不过我用下来的感觉确是如此,最大的问题是在于它太强大了有太多的库,貌似没有一个地方可以集中查看所有库的文档(https://pypi.Python.org/pypi 算吗?)。那Python究竟能做些什么?

还是先看一下官网上的说明:

The Python Package Index (PyPI) hosts thousands of third-party modules for Python. Both Python’s standard library and the community-contributed modules allow for endless possibilities.

  • Web and Internet Development
  • Database Access
  • Desktop GUIs
  • Scientific & Numeric
  • Education
  • Network Programming
  • Software & Game Development

再看一下知乎上的回答,大家都用Python做什么?

做网站后台:有大量的成熟的框架,如django,flask,bottle,tornado

写网络爬虫:Python写爬虫很简单,库很健全

科学计算:参加数学建模大赛,完全可以替代r语言和MATLAB

数据挖掘:机器学习:Python的机器学习包很多

数据科学:最近spark,Hadoop都开了Python的接口,所以使用Python做大数据的mapreduce也非常简单

自动化运维:做系统部署,日常维护的脚本


看到Python的功能强大了吧。现在工作需要的一些网络数据抓取,我都用Python处理了。对于一个小白来说学习Python要注意些什么,哪些是重点,如果自学Python找一份开发的工作,重点又该是什么?

还是用数据说话,我用Python写了一段代码,把51JOB上上海地区Python职位的要求爬取下来,看看公司里对Python开发的要求是什么,这样你学习起来才更有针对性。

我们学Python时我们在学什么,不看亏大了

Python抓取列表页所有岗位链接

我们学Python时我们在学什么,不看亏大了

一共抓取了194个Python开发岗位

一、自学中一个最大的问题是,你没有找到应用的场景

大多数同学在自学一门编程语言时,是没有应用的场景感。就是不知道学了做什么用,讲不出具体、合理的应用。如果是有老师教,老师带着你学,是没有关系的。因为每一阶段做什么练习,做什么项目,知识点学到什么程度,老师都会帮你规划好。自学不一样,最好每个技能点都要有明确的应用场景感,这样学习起来目标、目的更强,不会出现看不到进步,自我否定而放弃。

学习Python,比较好快速找到应用的场景。如果马上可以找到解决工作生活中的问题,用Python来实现,学习的效果和效率就会立马得到提升。这种学习方法,采铜称之为“设计式操练”。

还是回到刚才知乎上的回答,有的人拿Python写了一个12306余票检测脚本;有的人用Python爬取图片和电影资源… … 这些就是具体应用的场景感,然后分解功能,一步一步完成,Python可以用最少的代码来实现。

我们学Python时我们在学什么,不看亏大了

一定要破解 系列丛书《 从门到放弃!》

二、当我们学Python,我们学什么

1)如果学Python是想了解编程语言,做一些实用小工具来提高效率,那学习的主要内容应该是Python的网络访问(urllib, urllib2, requests),爬虫相关的库,正则表达式, BeautifulSoup,XPath,Excel,数据库MySQLdb模块等,了解html网页。

这些知识熟练应用,从网络上抓取数据,再进行分析处理,完全没有问题。

2)如果你想学习Python语言找一份开发的工作,那看企业的岗位中有哪些要求。(一共194个Python开发岗位)

  • 84个Python开发岗位是要求Web开发(后端开发)占43.3%,其中81个岗位明确需要django
  • 118个岗位对Linux有明确的要求,占60.8%,74个岗位要求有Java开发经验占38.1%
  • 26个岗位对PHP有要求,占13%
  • 运维岗位4个,测试岗位3个
  • 高级工程师岗位是26个,占13%
  • 工作经验一般要求2年,一些岗位明确要求Python经验2年以上。
  • 爬虫、数据分析相关的岗位17个,占8.7%

我们学Python时我们在学什么,不看亏大了

“职位要求”

再看一下岗位需求量,我把Java的也列出来作一个对比:

城市 Python岗位数量(个) Java岗位数量(个)
上海 287 9993
西安 10 1309
武汉 23 2018
乌鲁木齐 0 55
北京 347 12235

结论:

 

1.Python语言作为工作中效率提升的工具,非常好用的。

2.Python好用易学,但作为程序员主力开发语言,要求比较高,大多需要其他语言的使用经验。Python作为程序猿的想扩展的新语言非常合适。

3.如果没有编程语言基础,想学习Python后从事开发,要求偏高。重点要放在Web学习,框架(Flask, Django)学习上,html, js 是基本。同时要打好Linux基础,可以多了解一些Java比较好。

相关新闻

历经多年发展,已成为国内好评如潮的Linux云计算运维、SRE、Devops、网络安全、云原生、Go、Python开发专业人才培训机构!