您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 信息化管理 > 如何自学-Python(干货合集)
如何自学Python(干货合集)LearnPythonTheHardWay零编程基础学python,浅显易懂,操作性强。中文翻译版本:笨办法学Python其实python非常适合初学者入门,上手很容易。我就是完全通过网上资源学了python的。最大的是3点经验:1.找一本浅显易懂,例程比较好的教程,从头到尾看下去。不要看很多本,专注于一本。把里面的例程都手打一遍,搞懂为什么。2.去找一个实际项目练手。我当时是因为要做一个网站,不得已要学python。这种条件下的效果比你平时学一门新语言要好很多。所以最好是要有真实的项目做。可以找几个同学一起做个网站之类。3.最好能找到一个已经会python的人。问他一点学习规划的建议,然后在遇到卡壳的地方找他指点。这样会事半功倍推荐几个网上的资源:简明Python教程与孩子一起学编程HeadFirstPython中文版笨办法学PythonDive.Into.Python中文版(附课程源码)Python核心编程深入理解PythonPython标准库Python编程指南diango_book中文版解压密码均为:======================在线教程:简明Python教程:简明Python教程(较新版):AByteofPythonDiveintoPython:DiveIntoPython阶段一:前辈领进门。第一眼是一个前辈给我看了看Python的代码,因为自己最早学习的是Java语言,第一眼看到Python的时候,前辈说,“Python是面向对象的”,然后就打印了几句代码。可我怎么也看不出到底哪里是“面向对象”的。前辈说“在Python里,一切皆对象”,我才有点领悟的说道:“原来把什么看成对象,就是面向对象”,哈哈。阶段二:开始看的是《DiveintoPython》、《Leaningpython》、《PythonDoc》。因为有很多语言学习经历,很快就完成了初步语法和使用学习。太复杂的特性还是在使用中逐步掌握的。阶段三:开始使用Python做自己的一些日常工作。比如Python搜索文件,Python批量处理等,使用最多的还是re模块和socket相关模块。写了大量的例子,让自己对Python更加喜爱,也更加熟悉。此时翻阅最多的是《PythonDoc》的指南。不管是语言参考、库参考、Demo参考,都有大量可使用的内容,内容质量很高堪比JDK。阶段四:生产上马。开始使用Django,Flask,Tornado开发一些web应用,写一些日常使用的工具包等。逐步提升设计能力,和整体代码的管理能力。阶段五:更合理的分配好C,Java,Python三门语言各自擅长的部分。把合适的语言用到合适的地方。尽管一门语言有时候可以搞定所有的,但用擅长的语言解决合适的问题才是效率最高的。这也是“Python的大道至简”的理念带给我的帮助和认识。PS:其中过程中主要的一些方法:1、看书。学习的基础。2、自己本地练习。编程还是要实践出真知。3、资料查询。google,stackoverflow等多关注。4、交流。各种论坛上的pythongroup,论坛。最早去的CU,JavaEye,不过现在貌似去的少了。googlegroup必须订阅。学习+实践+总结,掌握语言的法宝。学Python,看的第一篇文章来自42区,推荐大家看看网站开发.漫游指南。多关注下牛人,多实践。更新2013-12-17前段时间整理了一篇博客,搜集了学习Python入门、数据库和Web开发的一些资料,原文见,这里摘抄一下。入门和基础Python有Python2.x和Python3.x之分,争论很多,见Python2orPython3。初学者不用考虑这个问题,可以从Python2.x入门,之后再讨论会多一些理性。洪强宁:Python于Web2.0网站的应用:豆瓣网洪强宁在QCon北京2010中的技术分享,若不能访问,请自备梯子;另外,豆瓣的阿北很值得关注。AByteofPython:即简明Python教程,边看边练习就对Python有基本的了解,可以轻松存活。Google'sPythonLessons:Google出品的Python教程,值得信赖。PythonDocumentation:Python在线文档,若嫌枯燥,可以直接看PythonStandardLib。42区:python入门指引:江湖人称张教主的Python入门指引,除开《Python核心编程》。严格来说,这是张教主的一份Python资料索引。CS61A:SICPwithPython:作为计算机相关人士,SICP都不了解,实在很惭愧,所以来还债了。这应该是起源于MIT的SICP教程,一个用Python,一个用Scheme。看到一个有趣的python的招聘测试:同学发的一个贴,总结了一下应聘中遇到的问题,并给出了相应的资料来学习。如果想检测下自己的Python水平,请自觉移步北京视讯天下的开发测试。MOOC们:在线公开课很多,见课程图谱;仅在Codecademy上学了一点;现在希望能够每天跟进一些感兴趣的课程,多多学习。书:去年6月份一同事离职,我买了两本黑客与画家,一本送给他(博客一起去看海),另一本给部门老大;他回送了一本Python源代码剖析,看书名就知道是讲底层原理的,有机会啃啃。源代码:直接到Github上去找吧。Python与数据库在项目开发中,数据库应用必不可少。这里汇总下目前接触过的数据库和使用教程。SQL,计算机出身的人应该都学过,若有疑问可以参考WikipediaSQL,并使用SQLite做下练习。PEP249:DBAPI:数据库访问接口规范,当时还做了一份笔记。SQLite:教程见SQLitePythonTutorial;若要深入了解,推荐TheDefinitiveGuidetoSQLite;看此书时,做了一些好句子、段落的摘要,见SentencesinSQLite3。MySQL:教程见PythonMySQLDatabaseAccess。OracleDatabase:有可能这是最庞大的数据库,所以需要专职的DBA。官方教程TheMasteringOracle+PythonSeries,快速入门教程cx_OracleQuickStart。SQLAlchemy:Python的ORM标准和框架,解决面向对象编程和关系数据库模式不匹配的问题。数据库理论除了SQL,还有另一派NoSQL。关于常见NoSQL产品的比较见MainNoSQLDatabaseComparison;若果需要一些NoSQL的理论知识和基本概念,见TheNoSQLEcosystem、BigData与NoSQL。目前仅用过MongoDB和Redis。MongoDB:如果熟悉SQL,MongDB的学习成本会很低;相关资料见PythonLanguageCenterinMongoDB;用过的两个驱动:1)PyMongo,提供了类似MongoShell的接口;2)MongoEngine:APythonObject-Document-MapperforworkingwithMongoDB,即MongoDB的'ORM'框架,此时变成了'ODM',MongoEngineonGithub。Redis:Redis需要一些学习成本,入门推荐TheLittleRedisBook;用过的Python客户端驱动Redis-py;更多客户端见RedisClients。NoSQL建模:SQL发展了几十年,有很成熟的建模技术,那么NoSQL呢,见陈皓:NoSQL数据建模技术,原文NoSQLDataModelingTechniques。更多资料:NoSQL英文站点见NoSQLDatabase;NoSQL中文论坛见NoSQLFan:关注NoSQl相关的新闻和技术。NoSQLFan中,MongoDB和Redis资料很多,已经形成了资料专题,包括介绍、内部实现、应用与优化、新闻等,总能发现你想要的东西:1)NoSQLFan:Redis资料汇总专题;2)NoSQLFan:MongoDB资料汇总专题。Python与Web开发Python的Web框架众多,见WebFrameworksforPython,总有一款适合你或你的项目,实在不行,请动手打造自己的框架;为什么会有这么多框架呢,见WhysomanyPythonwenframeworks?。Web.py:已故AaronSwartz的框架。一句话介绍web.pyisawebframeworkforPythonthatisassimpleasitispowerful.web.pyisinthepublicdomain;youcanuseitforwhateverpurposewithabsolutelynorestrictions.。接触的第一个Web框架,后来模仿MovableType,写了一个简单的博客,见BlogonGithub,在线demoPastimeParadise;碰到的坑点是模板中嵌套Python代码一直有缩进问题。Flask:一句话介绍FlaskisalightweightwebapplicationframeworkwritteninPythonandbasedontheWerkzeugWSGItoolkitandJinja2templateengine.ItisBSDlicensed.Flaskiscalledamicroframeworkbecauseitkeepsthecoresimplebutextensible。因为工作变动,练习过一段时间的Flask,以便熟悉开发的工具链;如果没有Rails,我想这才是自己首选的Web开发框架:simplebutextensibleandforfun。实战教程TheFlaskMega-Tutorial。Tornado:来自FriendFeed的异步框架,FriendFeed被Facebook收购后开放了源代码,见TornadoonGithub。一句话介绍TornadoisaPythonwebframeworkandasynchronousnetworkinglibrary,originallydevelopedatFriendFeed。Tornado主要特点是non-blocking,如果你想开发real-time的Web应用,Tornado是一个不错的选择。Django:一句话介绍Djangoisahigh-levelPythonWebframeworkthatencouragesrapiddevelopmentandclean,pragmaticdesign.,接触不多,作为全栈式框架,听说它的组件都是MadeinDjango。更多资料见Django资料。IDEVim+PythonMode。目前就用这个方案,很方便,直接引用同学的效果图。关于Vim资料和讨论,请移步Vim资料大全;关于Vim更多插件和演示,请移步k-vimonGithub;关于Git,Github,请移步本站FreeBlogwithGithubPages。社区啄木鸟社区42区:网站开发.漫游指南PythononV2EXPython4cn豆瓣Python小组哲思社区周刊PythonWeekly:每周更新,包括Python相关的文章、教程、演讲、书籍、项目、工作等。Pycoder'sWeekly:与PythonWeekly类似,两者可以互为补充,了解过去一周动态。码农周刊:developerWorks出品的周刊,来自国人的分享。可以先看为什么要做《码农周刊》?;接着《码
本文标题:如何自学-Python(干货合集)
链接地址:https://www.777doc.com/doc-4340008 .html