如何从零开始学python
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从零开始学python相关的知识,希望对你有一定的参考价值。
新手学Python可以按照以下步骤进行:1. 按部就班敲代码
在Python的学习教程中,在讲到相应的语法规则的时候,必定有相应的案例,Python新手应按部就班的敲一遍代码,切记不可直接抄写,而是默写,然后进行对比,及时发现错误,并订正。
2. 阶段案例实操
对于正规的Python学习教程中,会安排阶段性的作业考核,也称为案例,一个阶段的案例就比较具有综合性,可以客观的考察Python学员能否真正的对Python知识点消化吸收,并融会贯通,通过该案例的实操,可以进行知识点的查漏补缺!
3. 大型项目模仿
在Python学习中,少不了大型项目实操,如果参加培训学习,这个就比较简单了,往往课程教学中会包含这一项,Python学员可以先自己写一遍,然后再听老师的讲解,通过对比,找到疑惑点和不足之处,然后进行思路和项目的优化;对于未参加Python培训的学员,可以在网上找一些大型项目进行练习,多看多练多总结,就能熟练掌握Python,形成更优化的Python思路。
对于Python等编程语言的学习,首先是要掌握齐全科学的Python学习教程,其次,要有恒心和细心,多看、勤思考、多练习是一定能够将Python学好的! 参考技术A 1、学习的时候,我们都是要从Python的基础语法开始学习 ,了解什么是Python的变量 什么是循环 什么是函数,什么是模块。类等等。总之,基础是学习以后高级开发的基石。
这个阶段可以,选择一些经典书籍或者视频进行学习。
书籍可以看看《python快乐编程—基础入门》这本书,是针对零基础学生来编写的书。
2、在学习完基础语法的时候,你也对python有了一定程度的了解了,也知道Python有很多的学习方向,比如说数据采集方向(爬虫),或者Web开发方向,也可能是最近特别火热的人工智能方向。每个方向所需要的技术都是不尽相同的,所以在我们学习完成Python的基础语法之后,一定要慎重选择自己之后的进阶方向。
3、在进阶阶段,建议以最新的python视频学习为主,相关书籍为辅,这个阶段主要是学的技术是最新的,不要给自己留一个学完之后技术已经过时的惨败后果。
此外还有一些小小的学习技巧分享给大家,希望大家调整好心态,坚持下去!
1.作为小白刚接触编程,理解起来慢很正常。不能理解的东西,也不要死磕太久,在不断的练习中,你对代码的理解会越来越深。
2.个人认为,人按学习能力可以暴力分为:上手快&忘得快,上手慢&理解深,上手快&理解深。好了,第三类人我就不想多说什么了。。。相信很多小伙伴都是第二类人!
3. 遇到问题,别死磕,多用搜索引擎,多看大牛的博客。
4. 觉得某个知识点时间花得久了,无非是想短时间投入,获得较大的成就感,或者说想一帆风顺敲代码,别遇到什么bug。不存在的。而且,一般情况下,花越多时间理解的知识点,花越多时间改好的bug,不是会获得越大的成就感才对嘛?! 参考技术B 在众多高大上的自学指导中,尝试做一股清流,把要讲清楚的都讲清楚,除了一堆资料之外,你能在学之前就有一个非常明显的结果倾向。
本文以《小白带你学Python》为内容方向,试图在繁杂的信息里,给你找到你学习Python的动力和路径,本文更新于2017年7月21日17:30;
========================正文分割线==========================
在前文中我们提到:
Python岗位有哪些呢?主要的岗位有这些:
Python全栈开发工程师(10k-20K)
Python运维开发工程师(15k-20K)
Python高级开发工程师(15k-30K)
Python大数据工程师(15K-30K)
Python机器学习工程师(15k-30K)
Python架构师(20k-40k)
目前应用最多的:全栈开发、数据分析、运维开发,今天我们就以这三个重点的岗位来做一下自学Python的规划,希望你在学之前就能有结果的来走得更远。
在这里我们建议大家用知识投资的《道、法、器、术、势》五个工具来完美的执行和落地自学Python,好了,废话不多书,我们来开始:
————————
第一:道——明确目标
其实很多人在学习Python之前很少想这个,因为很多人说:现在Python很火呀,所以我么需要学。这个其实跟你自己没有什么关系,例如:你曾经想做一个网站不会开发,现在可以做了,现在Python很火并且你也要学来找工作,未来Python很火,我具备了Python的技能会不错。
在一生中,我们或多或少总会卡到目标上。在一些我们擅长的领域,我们会有明确的目标,并且积极指导别人:亲!干事之前,你要先定目标啊!
王健林的小目标,大家在朋友圈也都看过了,他会定先挣它一个亿。
第二:法——做好你学习Python的系统规划
1.目前市场需求主流的岗位里,你得选择一个其中你目前看来可以学,并且最敢兴趣学习的方向;
2.在方向选择好后,对照招聘网站:拉勾、智联、Boss直聘等网站的岗位要求,进行学习内容的统计与大概的记录;
3.分模块的计划你学习这个模块的时间和完成的大概目标;
4.列出你可能出现的学习误差与为之准备的应对方案;
好了,你发现没有,其实任何学习重要的不是有什么资料,核心是如何学,学多久,有没有时间限制,遇到过自己多次学习某个内容或者其他人学习某个内容,最关键的一点是在起步阶段,开始属于激情期,激情在前面释放越多,后面的持续力就很弱,好了这就是关于学习计划。
废话说多了,那我们来看看一个普适性的学习Python的流程;
1天——下载并安装好学习环境:到www.python.org网站上下载一个python3.0以上的版本。我建议初学者,不要下载具有IDE功能的集成开发环境,比如Eclipse插件等。
4周——下载一些python的学习文档,比如《简明Python教程》,《笨办法学Python》等等。通过学习语法,掌握python中的关键字语法,函数语法,数学表达式、变量、数据结构、语法等等等
1. 了解Python是什么,都能做些什么?
2. 知道什么是变量、算法、解释器
3. Python基本数据类型
4. 列表和元组的操作方法
5. 字符串操作方法
6. 基本的字典操作方法
7.任何知识它的基础知识都是有些枯燥的,现在我们就可以动手来做一些逻辑层面的东西了。掌握 if、else、elif、while、for、continue、break和列表推导式等这些语句的使用,还有程序中的异常处理。
2周——看完基础后,就是做一些小项目巩固基础,python具备很好的交互学习模式,对于书本上的例子我们可以通过交互平台进行操练,通过练习加深印象,达到学习掌握的目的。
2周——通过以上三个步骤的学习后,我们大致掌握了python的常用方法、关键字用法以及函数语法等。接下去的学习上,我们就可以着手学习常用模块的使用, 比如os,os.path,sys,string模块等。我们可以在交互环境中先熟悉使用其中的函数,如果遇到函数的使用上的问题,可以参考python 安装后的自带chm帮助文件。
2周——为了更好得掌握python,我们的学习不能只是停留在学习一些语法或者api阶段。在此阶段中,我们可以尝试用python解决我们项目中遇到的一 些问题,如果项目不是用python开发的,那我们可以想想能不能用python制作一些项目组可以使用的一些工具(utility),通过这些工具简化 项目组成员的任务,提高我们的工作效率。如果没有项目,我们也可以自己找些题目来自己练习练习。
2周——Python库是Python的精华所在,可以说Python库组成并且造就了Python,Python库是Python开发者的利器,所以学习Python库就显得尤为重要:
2周——经过以上锻炼后,我们的python知识水平肯定是越来越高。接下去的学习,我们就要更上一层楼。为了学以致用,真正能应用于项目开发或产品开发,我 们还必须学习企业应用开发中必须要掌握的网络和数据库的知识。在此的学习就不光是python语言本身的学习了,如果之前没有学习和掌握很网络和数据库知 识,在此阶段我们可以借此机会补习一把。
3周——到此阶段,我们已经是真正入门了。在接下去的工作中,就是要快速地通过我们的所学来服务项目了。在此阶段,我们除了掌握python自带的模块外,我 们最好在掌握一些业界广泛使用的开源框架,比如twisted、peak、django、xml等。通过熟练使用它们,达到闪电开发,大大节省项目宝贵时间。
《Python 核心编程》,介绍了 Python 的一些具体领域的开发方法;
《Python 网络数据采集》,很简单的爬虫入门书;
《利用 Python 进行数据分析》,介绍了 Pandas 和 NumPy 的用法;
《Flask Web 开发》,如何用 Flask 写一个博客。
第三:术——你具体的学习手段
1.每天你计划学习多少时间?例如一天必须学2小时,每天坚持;
2.每个阶段的计划拖延时间不能高于多少时间?
3.如果一个阶段不顺利如何调整?
其实很多时候,并不是资料不够多,而是本身的学习思路和计划出现了问题,那么其实最后学习Python的结果会变成:懂得了很多道理,收集了很多资料,依然学不好Python。
第四:器——学习的工具和素材
在知乎的所有学习的评中,出来最多的就是书、视频、网站一大堆,很多人觉得非常的赞,确实如此,但是回头看,你的网盘里躺着的500G视频,还是没有让你学会Python,我给大家的建议是:少为多,学为多,做为多,完成为多,而不要做伸手党。
在主流的学习中,按照学习素材来分,我们分为这几大类:
——真人:有人给你准备好素材,过程计划,内容,让后你只要用心学就行,这个就是大家常说的培训,属于懒人成长式。(线下培训班)
PS:不做任何推荐
——视频:有人把学习的过程录制好,你只要按照要求跟着做就行,出现问题你无法及时找到。(真人视频、代码视频)
——书本:有人把学习过程帮你写出来,你只需要跟着书本的过程过就行,然后按照要求学习(实体书籍、电子书)
《简明Python教程》
《笨办法学Python》
书籍推荐如下:
————————————————————————
下面我们推荐6本高分书籍给大家,希望大家学习愉快:
1.Python编程:从入门到实践
豆瓣评分:8.8
内容简介:本书是一本针对所有层次的Python 读者而作的Python 入门书。全书分两部分:第一部分介绍用Python 编程所必须了解的基本概念,包括matplotlib、NumPy 和Pygal 等强大的Python 库和工具介绍,以及列表、字典、if 语句、类、文件与异常、代码测试等内容;第二部分将理论付诸实践,讲解如何开发三个项目,包括简单的Python 2D 游戏开发如何利用数据生成交互式的信息图,以及创建和定制简单的Web 应用,并帮读者解决常见编程问题和困惑。
豆瓣书友推荐:很好的入门书,简洁全面,适合小白。learning python之类大砖头太不友好。这本虽然有些地方讲得不深入,但是对新手友好。
————————————————
2."笨办法"学Python
豆瓣评分:8.0
内容简介:本书是一本Python入门书籍,适合对计算机了解不多,没有学过编程,但对编程感兴趣的读者学习使用。这本书以习题的方式引导读者一步一步学习编程,从简单的打印一直讲到完整项目的实现,让初学者从基础的编程技术入手,最终体验到软件开发的基本过程。
Zed Shaw完善了这个堪称世上最好的Python学习系统。只要跟着学习,你就会和迄今为止数十万Zed教过的初学者一样获得成功。
这本书会让你的每一分钟投入都有回报。Python是世界上最强大、最受欢迎的编程语言之一,很快你就会成为一名Python程序员。
豆瓣书友推荐:花了一周的时间看完,在以前的基础上零零碎碎学了一些新的东西,还算是有所收获,但是前面讲的很基础很简单,到ex40之后突然难度增加不是很懂在讲些什么。
————————————————
3.Python学习手册
豆瓣评分:8.1
内容简介:《Python学习手册(第3版)》讲述了:Python可移植、功能强大、易于使用,是编写独立应用程序和脚本应用程序的理想选择。无论你是刚接触编程或者刚接触Python,通过学习《Python学习手册(第3版)》,你可以迅速高效地精通核心Python语言基础。读完《Python学习手册(第3版)》,你会对这门语言有足够的了解,从而可以在你所从事的任何应用领域中使用它。
豆瓣书友推荐:用了两周的时间将这本书啃了一下,还有200多页的电子版没看,但还是忍不住先来评论。既是总结自己,也想帮助别人。
本书总评:
优点:解释详细,例子丰富;关于Python语言本身的讲解全面详尽而又循序渐进不断重复,同时详述语言现象背后的机制和原理;除语言本身,还包含编程实践和设计以及高级主题。
缺点:有些厚;翻译不佳;代码练习题很少;
————————————————
4.Python基础教程
豆瓣评分:8.0
内容简介:本书是经典教程的全新改版,作者根据Python 3.0版本的种种变化,全面改写了书中内容,做到既能“瞻前”也能“顾后”。本书层次鲜明、结构严谨、内容翔实,特别是在最后几章,作者将前面讲述的内容应用到了10个引人入胜的项目中,并以模板的形式介绍了项目的开发过程。本书既适合初学者夯实基础,又能帮助Python程序员提升技能,即使是 Python方面的技术专家,也能从书里找到令你耳目一新的东西。
豆瓣书友推荐:写得挺生动亲民的,很好的入门书。
————————————————
5.Python核心编程
豆瓣评分:8.0
内容简介:学习专业的Python风格、最佳实践和好的编程习惯;
·加强对Python对象、内存模型和Python面向对象特性的深入理解;
·构建更有效的Web、CGI、互联网、网络和其他客户端/服务器架构应用程序及软件;
·学习如何使用Python中的Tkinter和其他工具来开发自己的GUI应用程序及软件;
·通过用C等语言编写扩展来提升Python应用程序的性能,或者通过使用多线程增强I/0相关的应用程序的能力;
·学习Python中有关数据库的API,以及如何在Python中使用各种不同的数据库系统,包括mysql、Postgres和 SQLite。
豆瓣书友推荐:了解Python语言方方面面的不错选择,虽然版本有些旧,对于较晚接触Py的人来说,一个“副作用”是可以更多地了解Py的过去。
————————————————
6.流畅的Python
豆瓣评分:9.5
内容简介:本书由奋战在Python开发一线近20年的Luciano Ramalho执笔,Victor Stinner、Alex Martelli等Python大咖担纲技术审稿人,从语言设计层面剖析编程细节,兼顾Python 3和Python 2,告诉你Python中不亲自动手实践就无法理解的语言陷阱成因和解决之道,教你写出风格地道的Python代码。
豆瓣书友推荐:非常好的python进阶书,翻译的也不错,基本上没有错误。协程和元编程死了一堆脑细胞。之前也看了不少文章宣传py3,但看完这本才最终决定迁到py3。
————————————
——新闻:关于学习的碎片化的咨询和知识,来用于你的个人成长(微信、知乎、咨询流)
第五:势——学习的心态和状态
1.任何一个学习的过程,看起来很爽,但是做起来就未必了,老掉牙的坚持是必备的。
2.教程选择一到两个就OK了,不要求多;
3.多写代码,尽量让代码撸爽你;
4.尽量多出错;
————————————
最后给大家贡献个一月学会Python基础开发的训练计划:
时间分为4周,全部自学,仅提供大纲,适用于Web方向:
1、第一周:读完《笨办法学Python》;
2、第二周:写个爬虫,需要深入了解re、sqlite3、Queue等几个模块,做个简单爬取;
3、第三周:学习一种Web开发框架,推荐Flask、webpy、Django之类的,学个数据库,写个简单的web应用如博客;
4、第四周:给博客做个小功能并走完测试和服务器上架;
————————
以上为关于如何自学的一个流程,希望大家拍砖!本回答被提问者采纳 参考技术C 我最近就在学Python,这已经是我第4次开始学习了,前面3次都是盯着一本书《从零开始学Python网络爬虫》,因为爬虫是我平时工作应用最多的地方。但是我真的坚持不下去,就老想找一些跟我一起学的人,因为每次一遇到问题、或者我有什么事情开始忙了,我就坚持不下去,然后就要过个三四个月再重新开始。然后每次都下决心,每次都坚持不下去。
后来第四次的时候我就想,我就找个班吧,每天学一点,而且我遇到问题的时候至少有个人能教教我,帮忙解答。至于形式什么的我倒不是很在意,文字或者语音或者视频都可以,能让我每天写写代码,然后学到知识、投入应用就行。然后我就买了扇贝编程课的Python课。坚持了大概10天了吧,前面几课真的很简单,尤其对于我这种学基础的知识学了3遍的人来说,但是遇到问题我会在群里问,有人解答,这一点蛮好的。
我的意思是,如果一直盯着书,自学,真的挺难的,还不如报个班算了。 参考技术D 先学语法,然后在跟着项目学经验。
从零开始学Python 三(网络爬虫)
本章由网络爬虫的编写来学习python。首先写几行代码抓取百度首页,提提精神,代码如下:
import urllib.request file=urllib.request.urlopen("http://www.baidu.com") data=file.read() handle=open("code/python/baidu.html","wb") handle.write(data) handle.close()
除了第一行导入第三方包之外,我们用5行代码实现了一个简单的程序:读取百度首页并存储在本地制定文件。下面来详细介绍代码:
1.import urllib.request
urllib库是python的一个操作url功能强大的库,经常用在爬虫程序中。使用上述代码,我们便可以在程序中打开并爬取网页。
2.urllib.request.urlopen("http://www.baidu.com")
使用urlopen方法,参数为想爬取的网页。成功之后,把爬取的内容赋值给file变量。
另,读取file数据有2种方法:
file.read() //读取全部数据
file.readline()//读取一行数据
3.handle=open("code/python/baidu.html","wb")
通过open函数打开一个文件,并且以“wb”即二进制写入方式打开,然后赋值给hadle变量。需要注意首先建立对应的文件夹和文件,否则无法运行。错误如下:
Traceback (most recent call last): File "<pyshell#10>", line 1, in <module> fhandle=open("/code/python","wb") FileNotFoundError: [Errno 2] No such file or directory:
4.handle.write(data)
使用write()方法将data数据写入文件
5.handle.close()
关闭文件。操作完文件之后一定要记得关闭。至此,我们就把百度首页保存到了本地文件:
打开文件显示如下:
其实,上面5行代码可以精简为1行,功能不变但代码更少:
>>> import urllib.request >>> >>> urllib.request.urlretrieve("http://www.baidu.com","code/python/baidu2.html") (\'code/python/baidu2.html\', <http.client.HTTPMessage object at 0x1060f8240>) >>>
接着,让我们更进一步,用程序模拟百度搜索操作。
当我们在百度上查询时,是在输入框中输入关键字,然后点击回车,接着百度返回搜索结果。这一系列操作通过http语音描述如下:使用get方法,通过"http://www.baidu.com/s?wd="+关键字调用百度服务。明白背后原理之后,我们用python模拟搜索“逃税”的操作,代码如下:
>>> url="http://www.baidu.com/s?wd=" >>> key="逃税" >>> key_code=urllib.request.quote(key) >>> urllib.request.urlretrieve(url+key_code,"code/python/baidu逃税.html") (\'code/python/baidu逃税.html\', <http.client.HTTPMessage object at 0x1060f8f98>)
打开本地文件后,发现和在百度上输入一模一样。
上面代码有个关键点:URL标准中只允许一部分ASCII字符(字母、数字),其他的比如汉字不符合标准。因此不能直接在url后面拼接汉字,需要使用quote()方法进行编码。相应的,如果需要对编码的网址进行解码,可以使用unquote()方法。
最后,以一个不完整的图片爬虫程序结束。
现在,我们想把淘宝网上连衣裙分类里的图片全部下载到本地。首先,找到目标网址(https://s.taobao.com/list?spm=a217f.8051907.312003.5.19833308A93qss&q=%E8%BF%9E%E8%A1%A3%E8%A3%99&cat=16&seller_type=taobao&oetag=6745&source=qiangdiao&bcoffset=12&s=180)。打开开发者工具,查看图片地址。
可以看到,我们已经拿到了图片路径,在浏览器上加上前缀"http://"就可以打开。
因此,程序逻辑如下:
循环获取网址内容->对于每个网址找到需要的图片->构造图片路径,下载到本地
具体代码请等下期内容。
以上是关于如何从零开始学python的主要内容,如果未能解决你的问题,请参考以下文章