百度百科?
Python(英语发音:/ˈpaɪθən/), 是一种面向对象、解释型计算机程序设计语言,由Guido van Rossum于1989年底发明,第一个公开发行版发行于1991年。Python语法简洁而清晰,具有丰富和强大的类库。它常被昵称为胶水语言,它能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C++重写。
单单就百度百科对它的解释,它并不能引起我多大的兴趣去接受去学习它。计算机编程语言何其多,前段时间苹果发布了新的开发语言:雨燕(swift)。有些APP公司公然发布招聘信息:月薪万元招聘Swift软件工程师,要求:至少一天的Swift编程经验。其中的噱头有多少,我不知道。但我知道,应该会有更多的人转投入Objective-C和Swift的怀抱。
众多的语言中,我为什么挑选Python作为学习,因为它的语法,它的性质还有它的“万能”。
前由
刚开始工作时,我特别喜欢在工作时间去看一个人的博客。他叫陈皓,是酷壳(coolshell.cn)的站主。15年嵌入式开发经验!每一篇文章都很精辟,恰到好处的让我在他的文字中产生共鸣。所以,一直把他作为标榜我程序道路上的偶像。他的有一篇文章《程序员技术练级攻略》中提到“学习一门脚本语言,例如Python/Ruby,可以让你摆脱对底层语言的恐惧感,脚本语言可以让你很快开发出能用得上的小程序”。也在文章《千万别惹程序员》中将大多编程语言比喻为一种刀,其中说到“Python是把电锯,人挡杀人,佛招杀佛,威力很大,面对大型的物体的修整,比C++/C/Java什么的得心应手得多得多,但是对于一些精细的调优工作,明显不行”。这些话引起了我对Python的怀疑与好感:这东西真有这么邪乎?值得上手吗?试试看!
于是,我开始了Python的学习。学习了一段时间之后(应该说是刚刚学习了一段时间),我发现对于学习底层C语言的人来说,学习Python实在是太有意义了。
它的代码缩进,清晰直观,能规范你在写C代码时更加注重代码的美观;
它的语法和语义很C语言有很大的联系,能够很快的上手,掌握编程逻辑;
它很高效,无需编译的脚本语言用起来比C方便很多;
它不受“{}”的限制,只有Tab;
它是一门相当高级的语言;
计算密集型和IO密集型
计算密集型:需要CPU大量的运算;要求代码的执行速度快,程序语言越底层越好(如:C);
IO密集型:需要大量的IO输入输出操作;要求代码的执行效率快,程序语言开发效率要求高;
比如:完成同一个任务,C语言要写1000行代码,Java只需要写100行,而Python可能只要20行。C程序运行1秒钟,Java程序可能需要2秒,而Python程序可能就需要10秒。所以Python是一种相当高级的开发效率高的语言。不过运行速度慢也是它一大缺点,脚本语言嘛。
Python可以做什么?
万能语言,Python支持IO处理、CGI脚本交互、各种数据库操作、多任务机制、正则表达式、Web开发、网络编程、XML解析等当前非常热门的程序编程。而实现这一切,你不用像C语言那样去一个函数一个模块的去编写,你只需要简单的import对应的模块,即可放肆的调用它的接口为你实现这些。
如果你厌倦了C语言长时间的开发,如果你希望你所怀疑的问题能很快的得到印证。那就试试Python吧!
接下来的日子,可能不会发表类似《一步一步学Python(一)》的文章。因为自认为自己的Python基础还没有完全掌握(也确实是这样),只怕发出来的文章会漏洞百出误了小伙伴们。不过,还是会和大家分享自己的学习流程线路图。
最后在这里推荐几个不错的Python入门教程:
廖雪峰的Python教程:http://www.liaoxuefeng.com/;作者廖雪峰,十年软件开发经验,业余产品经理,精通Java/Python/Ruby/Visual Basic/Objective C等,对开源框架有深入研究,著有《Spring 2.0核心技术与最佳实践》一书,多个业余开源项目托管在GitHub。教程仍在更新中。
W3CSCHOOL:http://www.w3cschool.cc/python/;比较基础的入门教程,有C基础的应该半小时到一小时可以入门。