Py学习  »  Python

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

马哥Linux运维 • 7 年前 • 822 次点击  

本文转载自简书,作者为向右奔跑,感谢作者的贡献。




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

先看一下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抓取列表页所有岗位链接


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


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


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

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

还是回到刚才知乎上的回答,有的人拿Python写了一个12306余票检测脚本;有的人用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%

“职位要求”

再看一下岗位需求量,我把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比较好。



点击图片,了解更多课程详情


今天看啥 - 高品质阅读平台
本文地址:http://www.jintiankansha.me/t/JL2rfbIxii
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/2536
 
822 次点击