奇迹网站百万系统教程,如何系统地自学 Python
大家好,如果您还对奇迹网站百万系统教程不太了解,没有关系,今天就由本站为大家分享奇迹网站百万系统教程的知识,包括如何系统地自学 Python的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!
一、如何系统地自学 Python
是否非常想学好 Python,一方面被琐事纠缠,一直没能动手,另一方面,担心学习成本太高,心里默默敲着退堂鼓?
幸运的是,Python是一门初学者友好的编程语言,想要完全掌握它,你不必花上太多的时间和精力。
Python的设计哲学之一就是简单易学,体现在两个方面:
语法简洁明了:相对 Ruby和 Perl,它的语法特性不多不少,大多数都很简单直接,不玩儿玄学。
切入点很多:Python可以让你可以做很多事情,科学计算和数据分析、爬虫、Web网站、游戏、命令行实用工具等等等等,总有一个是你感兴趣并且愿意投入时间的。
废话不多说,学会一门语言的捷径只有一个: Getting Started
¶起步阶段
任何一种编程语言都包含两个部分:硬知识和软知识,起步阶段的主要任务是掌握硬知识。
°1硬知识
“硬
知识”指的是编程语言的语法、算法和数据结构、编程范式等,例如:变量和类型、循环语句、分支、函数、类。这部分知识也是具有普适性的,看上去是掌握了一
种语法,实际是建立了一种思维。例如:让一个 Java程序员去学习 Python,他可以很快的将 Java中的学到的面向对象的知识 map到
Python中来,因此能够快速掌握 Python中面向对象的特性。
如果你是刚开始学习编程的新手,一本可靠的语法书是非常重要的。它看上去可能非常枯燥乏味,但对于建立稳固的编程思维是必不可少。
下面列出了一些适合初学者入门的教学材料:
❖「笨方法学 Python」:
这本书在讲解 Python的语法成分时,还附带大量可实践的例子,非常适合快速起步。
❖「廖雪峰的 Python 2.7教程」:Home-廖雪峰的官方网站
Python中文教程的翘楚,专为刚刚步入程序世界的小白打造。
❖「The Hitchhiker’s Guide to Python!」:The Hitchhiker’s Guide to Python!
这本指南着重于 Python的最佳实践,不管你是 Python专家还是新手,都能获得极大的帮助。
❖「Python官方文档」:Our Documentation
实践中大部分问题,都可以在官方文档中找到答案。
❖辅助工具:Python Tutor
一个 Python对象可视化的项目,用图形辅助你理解 Python中的各种概念。
Python的哲学:
用一种方法,最好是只有一种方法来做一件事。
学习也是一样,虽然推荐了多种学习资料,但实际学习的时候,最好只选择其中的一个,坚持看完。
必要的时候,可能需要阅读讲解数据结构和算法的书,这些知识对于理解和使用 Python中的对象模型有着很大的帮助。
°2软知识
“软知识”则是特定语言环境下的语法技巧、类库的使用、IDE的选择等等。这一部分,即使完全不了解不会使用,也不会妨碍你去编程,只不过写出的程序,看上去显得“傻”了些。
对
这些知识的学习,取决于你尝试解决的问题的领域和深度。对初学者而言,起步阶段极易走火,或者在选择 Python版本时徘徊不决,一会儿看 2.7
一会儿又转到 3.0,或者徜徉在类库的大海中无法自拔,Scrapy,Numpy,Django
什么都要试试,或者参与编辑器圣战、大括号缩进探究、操作系统辩论赛等无意义活动,或者整天跪舔语法糖,老想着怎么一行代码把所有的事情做完,或者去构想
圣洁的性能安全通用性健壮性全部满分的解决方案。
很多“大牛”都会告诫初学者,用这个用那个,少走弯路,这样反而把初学者推向了真正的弯路。
还不如告诉初学者,学习本来就是个需要你去走弯路出 Bug,只能脚踏实地,没有奇迹只有狗屎的过程。
选择一个方向先走下去,哪怕脏丑差,走不动了再看看有没有更好的解决途径。
自己走了弯路,你才知道这么做的好处,才能理解为什么人们可以手写状态机去匹配却偏要发明正则表达式,为什么面向过程可以解决却偏要面向对象,为什么我可以操纵每一根指针却偏要自动管理内存,为什么我可以嵌套回调却偏要用 Promise...
更重要的时,你会明白,高层次的解决方法都是对低层次的封装,并不是任何情况下都是最有效最合适的。
技术涌进就像波浪一样,那些陈旧的封存已久的技术,消退了迟早还会涌回的。就像现在移动端应用、手游和 HTML5的火热,某些方面不正在重演过去 PC的那些历史么?
因此,不要担心自己走错路误了终身,坚持并保持进步才是正道。
起步阶段的核心任务是掌握硬知识,软知识做适当了解,有了稳固的根,粗壮的枝干,才能长出浓密的叶子,结出甜美的果实。
¶发展阶段
完成了基础知识的学习,必定会感到一阵空虚,怀疑这些语法知识是不是真的有用。
没错,你的怀疑是非常正确的。要让 Python发挥出它的价值,当然不能停留在语法层面。
发展阶段的核心任务,就是“跳出 Python,拥抱世界”。
在你面前会有多个分支:科学计算和数据分析、爬虫、Web网站、游戏、命令行实用工具等等等等,这些都不是仅仅知道 Python语法就能解决的问题。
拿
爬虫举例,如果你对计算机网络,HTTP协议,HTML,文本编码,JSON一无所知,你能做好这部分的工作么?而你在起步阶段的基础知识也同样重要,如
果你连循环递归怎么写都还要查文档,连 BFS都不知道怎么实现,这就像工匠做石凳每次起锤都要思考锤子怎么使用一样,非常低效。
在这个阶段,不可避免要接触大量类库,阅读大量书籍的。
°1类库方面
「Awesome Python项目」:vinta/awesome-python· GitHub
这里列出了你在尝试解决各种实际问题时,Python社区已有的工具型类库,如下图所示:
你可以按照实际需求,寻找你需要的类库。
至于相关类库如何使用,必须掌握的技能便是阅读文档。由于开源社区大多数文档都是英文写成的,所以,英语不好的同学,需要恶补下。
°2书籍方面:
这里我只列出一些我觉得比较有一些帮助的书籍,详细的请看豆瓣的书评:
科学和数据分析:
❖「集体智慧编程」:集体智慧编程(豆瓣)
❖「数学之美」:数学之美(豆瓣)
❖「统计学习方法」:统计学习方法(豆瓣)
❖「Pattern Recognition And Machine Learning」:Pattern Recognition And Machine Learning(豆瓣)
❖「数据科学实战」:数据科学实战(豆瓣)
❖「数据检索导论」:信息检索导论(豆瓣)
爬虫:
❖「HTTP权威指南」:HTTP权威指南(豆瓣)
Web网站:
❖「HTML& CSS设计与构建网站」:HTML& CSS设计与构建网站(豆瓣)
...
列到这里已经不需要继续了。
聪明的你一定会发现上面的大部分书籍,并不是讲 Python的书,而更多的是专业知识。
事实上,这里所谓“跳出 Python,拥抱世界”,其实是发现 Python和专业知识相结合,能够解决很多实际问题。这个阶段能走到什么程度,更多的取决于自己的专业知识。
¶深入阶段
这个阶段的你,对 Python几乎了如指掌,那么你一定知道 Python是用 C语言实现的。
可是 Python对象的“动态特征”是怎么用相对底层,连自动内存管理都没有的C语言实现的呢?这时候就不能停留在表面了,勇敢的拆开 Python的黑盒子,深入到语言的内部,去看它的历史,读它的源码,才能真正理解它的设计思路。
这里推荐一本书:
「Python源码剖析」:Python源码剖析(豆瓣)
这本书把 Python源码中最核心的部分,给出了详细的阐释,不过阅读此书需要对 C语言内存模型和指针有着很好的理解。
另
外,Python本身是一门杂糅多种范式的动态语言,也就是说,相对于 C的过程式、 Haskell等的函数式、Java
基于类的面向对象而言,它都不够纯粹。换而言之,编程语言的“道学”,在 Python
中只能有限的体悟。学习某种编程范式时,从那些面向这种范式更加纯粹的语言出发,才能有更深刻的理解,也能了解到 Python语言的根源。
这里推荐一门公开课
「编程范式」:斯坦福大学公开课:编程范式
讲师高屋建瓴,从各种编程范式的代表语言出发,给出了每种编程范式最核心的思想。
值得一提的是,这门课程对C语言有非常深入的讲解,例如C语言的范型和内存管理。这些知识,对阅读 Python源码也有大有帮助。
Python的许多最佳实践都隐藏在那些众所周知的框架和类库中,例如 Django、Tornado等等。在它们的源代码中淘金,也是个不错的选择。
¶最后的话
每个人学编程的道路都是不一样的,其实大都殊途同归,没有迷路的人只有不能坚持的人。虽然听上去有点鸡汤,但是这是事实。
希望想学 Python想学编程的同学,不要犹豫了,看完这篇文章,Just getting started~
二、企业网站模式实例分析——百万格子网站创造的赢利奇迹
百万格子网站的创始人亚历克斯·图,用一个年轻学生的眼光,创造出一个奇迹。他将网站首页划分为1万个格子,每个格子售出100美元,买家能在自己的格子中随意放置内容。几个月内,所有格子售罄,亚历克斯轻松赚得10万美元。零成本的建立,却赢得了100万美元,投资回报率惊人。互联网总是充满奇迹。
这个网站抓住了大量群体的需求,将推广组织和个人以低廉价格推广。当销售额达到1000美元时,亚历克斯开始撰写新闻稿,引起媒体关注。知名度提升后,订单激增。由于格子供不应求,网站创始人不得不将格子放到eBay拍卖。中国出现了类似网站,如1baiwan.com,目前也卖出了40多万元。尽管未售出所有格子,但仍然取得了显著成功。这表明,这种模式可以模仿,但没有技术含量的网站,大量跟风难以全部成功。百万格子网站是一个实验性产品,短期内提供了一锤子买卖的模式,但不是可持续盈利模式。
百万格子网站的成功意义在于,它展示了互联网创造奇迹的能力,启示我们开拓思路,创造更多创意和奇妙体验。互联网提供了更多财富的机会,我们需要的是创新,而不是盲目模仿。这样的机会难得,奇迹不会重复。
三、百万奇迹的项目背景
2011年适逢国际森林年,也是百万森林项目在中国开展的第二年,为支援西部气候贫困地区的人民改善生态环境、增加收入,百万森林与百度百科共同发起的“百万奇迹”计划,是知识公益的创新之举。百度百科为百万奇迹项目提供了线上知识平台。
百度是全球最大的中文搜索引擎、最大的中文网站,每天有2.9亿人通过百度获取信息。百度的公益平台,依托于百度的人气,以巨大的用户数为基础来团结各方面的力量,致力于传播公益理念,打造公益媒体平台,通过关注,报道,媒体宣传,长期参与到社会公益活动中去。
作为全球最大的中文搜索引擎,百度拥有全球最大的中文“维基”——百度百科,自2006年起,百度百科已经逐渐成为一部内容开放、自由、中国人自己的网络百科全书。中国拥有全球最多的10亿网民,其中共有2亿名维基协作创作者。维基协作创作者通过知识的重构与共享,使互联网用户能通过互联网获取知识。在互联网知识这个广阔的舞台上,每一个参与者的一小步贡献,都会对整个社会获取知识走向产生作用,甚至可能成为改变人类社会的一大步。
在百度百科这样一个内容开发、人人可参与的知识平台,凝聚网友的智慧和行动力,共同为应对气候贫困、改善生态环境做出贡献。气候组织(The ClimateGroup)成立于2004年4月,由时任英国首相布莱尔和来自北美、欧洲和澳大利亚的20位商业精英和政府领袖共同发起,是世界上第一家专注于气候变化解决方案的国际非政府组织,在世界上享有盛誉。气候组织至今已发展成为一个遍及全球6个国家和地区(英国、美国、欧洲,中国、中国香港、印度和澳大利亚),与世界最重要的50多个政府和企业合作的气候变化领域知名国际组织。
为抵御全球变暖带来的气候贫困,帮助西部贫困农民改善生态环境,增加经济来源,百万森林项目应运而生。百万森林项目是气候组织联合中国绿化基金会、联合国环境规划署共同发起,于2009年8月在北京由气候组织发起人之一、英国前首相布莱尔亲自启动,李冰冰担任该项目推广大使。项目采用NGO组织+农户+政府+专业农林技术公司的模式,以五元钱一棵树进行资金募集,以与企业合作等方式进行项目推广,扩大影响。从百万森林项目开始至今,已经种下了进20万棵沙棘树。沙棘是植物和其果实的统称。植物沙棘为胡颓子科沙棘属,是一种落叶性灌木,其特性是耐旱,抗风沙,可以在盐碱化土地上生存,百万奇迹是防风固沙,保持水土,改良土壤的优良树种,因此被广泛用于水土保持。国内分布于华北、西北、西南等地。沙棘为药食同源植物。沙棘的根、茎、叶、花、果,特别是沙棘果实含有丰富的营养物质和生物活性物质,可以广泛应用于食品、医药、轻工、航天、农牧鱼业等国民经济的许多领域。沙棘果实入药具有止咳化痰、健胃消食、活血散瘀之功效。现代医学研究,沙棘可降低胆固醇,缓解心绞痛发作,还有防治冠状动脉粥样硬化性心脏病的作用。
百万森林以每个贫困农户家庭5亩(每亩400块)的援助标准,帮助中国西部气候贫困地区人口改善生态环境、增加收入。农户是沙棘树的所有者,通过将沙棘果以市场收购价格卖给当地的榨汁工厂,获得收入,增加经济来源。
如果你还想了解更多这方面的信息,记得收藏关注本站。



