Python简介

Python初学目录:点击打开链接

Python学习推荐网址:点击打开链接

Python简介

【定义】

Python是著名的龟叔”Guido van Rossum1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言。Python是一种面向对象的解释型计算机程序设计语言

【为什么要学Python

【Python 能做什么?】

首先,对于初学者来说,比起其他编程语言,Python 更容易上手。

Python 的设计哲学是优雅、明确、简单。在官方的 The Zen of Python(《Python 之禅》)中,有这样一句话,

There should be one-- and preferably only one --obvious way to do it.

Python 追求的是找到最好的解决方案。相比之下,其他语言追求的是多种解决方案。

如果你试着读一段写的不错的 Python 代码,会发现像是在读英语一样。这也是 Python 的最大优点,它使你能够专注于解决问题而不是去搞明白语言本身。

注:漫画《口渴的 Python 开发者》,形容了 Python 开发者是多么轻松,来自 Pycot 网站

其次,Python 功能强大,很多你本来应该操心的事情,Python 都替你考虑到了。当你用 Python 语言编写程序的时候,你不需要考虑如何管理你的程序使用的内存之类的底层细节。并且,Python 有很丰富的库,其中有官方的,也有第三方开发的,你想做的功能模块很有可能已经有人写好了,你只需要调用,不需要重新发明轮子。这就像是拥有了智能手机,可以任意安装需要的 app。

第三,Python 能做的事情有许多。

在职场中,使用 Python 工作的主要是这样几类人:

  • 网站后端程序员:使用 Python 搭建网站、后台服务会比较容易维护,当需要增加新功能,用 Python 可以比较容易的实现。不少知名网站都使用了 Python 开发,比如:YouTube、Instagram,还有国内的豆瓣。很多大公司,包括Google、Yahoo等,甚至NASA(美国航空航天局)都大量地使用Python。

 

  • 自动化运维:越来越多的运维开始倾向于自动化,批量处理大量的运维任务。 Python 在系统管理上的优势在于强大的开发能力和完整的工具链。
  • 数据分析师:Python 能快速开发的特性可以让你迅速验证你的想法,而不是把时间浪费在程序本身上,并且有丰富的第三方库的支持,也能帮你节省时间。
  • 游戏开发者:一般是作为游戏脚本内嵌在游戏中,这样做的好处是即可以利用游戏引擎的高性能,又可以受益于脚本化开发的优点。只需要修改脚本内容就可以调整游戏内容,不需要重新编译游戏,特别方便。
  • 自动化测试:对于测试来说,要掌握 Script 的特性,会在设计脚本中,有更好的效果。Python 是目前比较流行的 Script。

如果你是一名业余开发者,只是想在资源少的情况下快速做出自己想要的东西、自动化的解决生活中的问题,那么 Python 可以帮你做到这几类事情:

  • 网站的开发

借助功能丰富的网站框架 django、flask 等等,你可以快速搭建自己的网站,还可以做到移动端自适应。

  • 用爬虫爬取或处理大量信息

当你需要获取大批量数据或是批量处理的时候,Python 爬虫可以快速做到这些,从而节省你的重复劳动时间。比如:微博私信机器人、批量下载美剧、运行投资策略、刷折扣机票、爬合适房源、系统管理员的脚本任务等等。

 

  • 再包装其他语言的程序

Python 又叫做胶水语言,因为它可以用混台编译的方式使用 c/c++/java 等等语言的库。

  • 智能硬件

树莓派作为微型电脑,也使用了 Python 作为主要开发语言。

用红外线遥控器控制树莓派,作者八宝粥

 

【编程语言对比】

现在,全世界差不多有600多种编程语言,但流行的编程语言也就那么20来种。如果你听说过TIOBE排行榜,你就能知道编程语言的大致流行程度。这是最近10年最常用的10种编程语言的变化图:

总的来说,这几种编程语言各有千秋。C语言是可以用来编写操作系统的贴近硬件的语言,所以,C语言适合开发那些追求运行速度、充分发挥硬件性能的程序。而Python是用来编写应用程序的高级编程语言。

【Python的优点】

  1. Python的定位是优雅明确简单,所以Python程序看上去总是简单易懂,初学者学Python,不但入门容易,而且将来深入下去,可以编写那些非常非常复杂的程序。
  2. 开发效率非常高,Python有非常强大的第三方库,基本上你想通过计算机实现任何功能,Python官方库里都有相应的模块进行支持,直接下载调用后,在基础库的基础上再进行开发,大大降低开发周期,避免重复造轮子。
  3. 高级语言————当你用Python语言编写程序的时候,你无需考虑诸如如何管理你的程序使用的内存一类的底层细节
  4. 可移植性————由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工 作在不同平台上)。如果你小心地避免使用依赖于系统的特性,那么你的所有Python程序无需修改就几乎可以在市场上所有的系统平台上运行
  5. 可扩展性————如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用CC++编写,然后在你的Python程序中使用它们。
  6. 可嵌入性————你可以把Python嵌入你的C/C++程序,从而向你的程序用户提供脚本功能。

 

【Python的缺点】

任何编程语言都有缺点,Python也不例外。优点说过了,那Python有哪些缺点呢?

第一个缺点就是运行速度慢,和C程序相比非常慢,因为Python是解释型语言,你的代码在执行时会一行一行地翻译成CPU能理解的机器码,这个翻译过程非常耗时,所以很慢。而C程序是运行前直接编译成CPU能执行的机器码,所以非常快。

但是大量的应用程序不需要这么快的运行速度,因为用户根本感觉不出来。例如开发一个下载MP3的网络应用程序,C程序的运行时间需要0.001秒,而Python程序的运行时间需要0.1秒,慢了100倍,但由于网络更慢,需要等待1秒,你想,用户能感觉到1.001秒和1.1秒的区别吗?这就好比F1赛车和普通的出租车在北京三环路上行驶的道理一样,虽然F1赛车理论时速高达400公里,但由于三环路堵车的时速只有20公里,因此,作为乘客,你感觉的时速永远是20公里。

 

第二个缺点就是代码不能加密。如果要发布你的Python程序,实际上就是发布源代码,这一点跟C语言不同,C语言不用发布源代码,只需要把编译后的机器码(也就是你在Windows上常见的xxx.exe文件)发布出去。要从机器码反推出C代码是不可能的,所以,凡是编译型的语言,都没有这个问题,而解释型的语言,则必须把源码发布出去。

这个缺点仅限于你要编写的软件需要卖给别人挣钱的时候。好消息是目前的互联网时代,靠卖软件授权的商业模式越来越少了,靠网站和移动应用卖服务的模式越来越多了,后一种模式不需要把源码给别人。

再说了,现在如火如荼的开源运动和互联网自由开放的精神是一致的,互联网上有无数非常优秀的像Linux一样的开源代码,我们千万不要高估自己写的代码真的有非常大的商业价值。那些大公司的代码不愿意开放的更重要的原因是代码写得太烂了,一旦开源,就没人敢用他们的产品了。

 

当然,Python还有其他若干小缺点,请自行忽略,就不一一列举了。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值