此文目的
此处不涉及Python的具体的基础语法等细节。
只是简单介绍一下,Python语言本身的特点。
以及让对Python没有一点概念的人,能有个直观的印象,大概了解到其是个什么东东。
以及搞清楚,什么是Python脚本,如何运行Python脚本。
Python语言简介
Python语言是属于脚本语言。
关于什么是脚本语言,简单说就是,需要你用什么编译器,将源代码,编译为对应的可执行程序,再去运行可执行程序;
而直接通过对应的脚本语言的解释器,去直接“运行”你的脚本语言的源代码,即文本文件,一堆的字符串,就可以实现运行程序的效果了。
即:
其他语言:源代码 -> 编译成可执行程序 -> 运行程序
脚本语言: 源代码 -> (解释器)直接"运行"你的源代码
注:
1. 更多的,关于什么是脚本语言的解释,可参考:
Python能干什么?
之前就遇到不少人问这个问题了。
简答:Python可以干,几乎所有的事情。
详解:
除了一门语言本身的限制,此处是Python作为脚本语言,对于其本身可以用来做什么,实现什么功能,更多的取决于你对Python语言和相关知识掌握了多少。
此处,不再赘述,而直接引用
新手学python起步不容易啊 -> python新手人门须知
中所整理的,关于Python的应用领域,至少有以下这些方面:
- 国内应用:豆瓣(架构:Quixote堂吉诃德)、搜狐(搜狐邮箱是架构在web.py上)、金山、腾讯、盛大、网易、百度、阿里、淘宝、热酷、土豆、新浪、果壳
- 国外应用:谷歌、美国航空航天局、YouTube、Facebook、工业光魔、Pixar、红帽、lucasfilm/Industrial Light and Magic、Zope……
- Python应用领域
- Web开发、数据库编程、桌面GUI应用开发、科学与数值计算、教育教学、网络应用开发、软件开发(控制、管理、测试等)、游戏与3D影像
- 游戏开发、网站建设、机器人和航天飞机控制等领域
- Python几乎可以用在任何场合(转载者注:前提是,你自己的确掌握了Python及相关知识)
Python语言的优点和缺点
任何优点和缺点,都是相对的,Python也是如此。
个人所理解的:
Python语言的优点
入门快,简单
如果只是用Python来实现你的一些小功能的话,你会发现,学完一些基本的语法后,就可以直接写代码,然后运行,就可以得到的结果了。
不论是从Python的语法,还是对于脚本语言的无需编译直接运行,你都会发现,入门和上手,相对都很简单。
此所谓的入门快和简单。
功能强大,使用方便
Python语言的所谓的功能强大,并不是语言本身多么多么牛X;
而是基于好用的,内置的标准库和丰富的,第三方的库/模块,数量众多,涉及领域众多,而使得你去实现某些功能的时候,发现一些常用的核心功能,别人都帮你实现好了。只需要你去使用对应的库,写写几行代码,就可以完整复杂且强大的功能了。
举个类似的比喻就像:
本来你想从头开始造个汽车,结果你在Python语言中就会发现,其核心的发动机,地盘,车架,等等,都有Python内置的相关功能,和第三方的库,帮你实现好了。
设置同一种功能,比如发动机,还有多个选择,而你要做的只是,去稍微了解的其各自优缺点,然后组合一下,稍微校准一下,然后就很快的弄出一台汽车了。
与此相对应的是,如果用其他语言实现,很可能的是,对于发动机啥的核心部件,没有现成的,而你要自己手动去打造,用对应的代码自己去实现,或者即使有现成的,结果功能也不够强,或者选择余地不够多,没有你满意的,还是需要你额外花很多精力去实现,然后把发动机,自己搞定之后,发现还有其他很多功能,也需要自己切实现,如此,你用其他语言,从无到有去弄出一台汽车的话,可能是少则几周,多则几个月。而用Python,很可能是几天,或者1,2周,就搞定了。
此所谓的,Python语言的内置库的功能强大和第三方库的功能强和数目多,综合而言就是Python很强大。
可移植性
可移植性,也是相对的。
比如Java,也是个可移植性很好的语言。
可移植性,简单说的就是,对于同样的代码,可以不经过改动,拿到别的一个平台下,直接可以同样使用,实现了同样的功能。
与此相对的,其他很多语言,比如C等,换个平台,很可能还需要改动一些代码,代码才能正常运行,实现同样的功能;
比如C#,那基本上,只能在Windows平台下运行,换个其他的,比如Linux,基本上就没法运行,没法用了。
而Python的可移植性,就是因为,无序编译,就是个普通的文本,就可以了。
不同平台,安装了Python环境后,都有对应的解释器,将Python代码解析成可以在当前平台下运行的代码,实现同样的功能。
此所谓,Python,相对其他很多语言,有很好的可移植性。
开源
简单理解为,Python代码的核心的库,核心的功能的实现,本身就是用不同代码实现的,和Python代码本身实现的;
所以,你要是高兴,可以自己去研究其本身是如何实现的;
你要是高兴,可以自己给其增加更多更好用的功能。
与此相对的是,其他很多语言,比如C#,那是微软实现的,核心代码,是不开放的,你无法知道其内部如何实现的。
代码开源的另外一个好处是,万一发现了代码中有bug,有问题的时候,你可以帮助语言本身去改进,不断提升语言本身。
此所谓,Python是开源的。
其他好处
Python还有其他一些好处,比如可嵌入性等等,可以把其他语言嵌入都Python中。
关于更多好处,不再赘述。
Python的缺点
性能
Python是门解释性语言,所以,相对来说的性能,是比其他有些语言,比如C语言,要差一点。这个是事实。
不过,更多的时候,尤其是很多上层领域,我们使用Python,要的就是方便好用,而对于性能,有时候,或者说很多时候,所带来的性能损失,可以忽略不计。
所以,大家也才愿意用Python的。
再说,很多时候,真的需要关心性能的话,还可以找办法去优化提升,以达到自己的需求;
此所谓的,Python性能相对要差,只不过多数时候可以忽略不计。
其他缺点
暂时也没太多,值得一提的缺点。
Python脚本的由来
首先要知道的,不论哪种语言的代码,也都是符合其特定语言的语法的,一堆字符串,所组成的东西;
而这些代码,即一堆字符串,一般都是存在在对应的文件里面的。
不同的语言,往往有自己,约定俗成的文件后缀名的。
比如C语言的.c文件,C++的.cpp文件,C#的.cs文件等等。
此处Python代码,一般都是放在后缀为.py的Python文件中的。
由于Python属于脚本语言,所以Python文件,又常常被常为Python脚本;
当然,有些人也把Python代码,说成Python脚本,也是同一个意思。
如何运行Python脚本
前面其实已经解释了这个问题。
但是为了更加详细的解释,如何在不同平台,去运行Python脚本,下面再详细的解释一下:
Python和其他常见的C/C++等语言最大特点就是,不需要编译.
即直接就可以通过,Python代码,一个普通的文本文件,就可以执行了。
那不熟悉的人会问,为啥普通的文本文件就可以运行呢?
那是因为,你的Python代码,虽然只是普通文本文件,但是有另外一个,叫做Python解析器的东西,会帮你,实时地,将文本文件,翻译为可以运行的代码,并且执行对应的代码,
如此,就实现了,Python的代码,普通的文本文件,也可以执行的效果了。
Python解释器/解析器
而Python解析器这个东西,很明显,不是凭空就有了的。
Python解析器,算是属于Python的整套系统,或者说整套运行环境的一部分,是需要你另外安装的。
换句话说,你需要先安装好Python,自然就自带了Python解析器,然后就可以支持Python代码的运行了。
只不过呢,有的时候,又不需要你安装,因为已经安装好了。
再具体点解释就是,目前主流的几种操作系统:
Windows:需要你单独下载对应的Python的exe或者msi安装文件,然后双击对应的exe(或msi)去安装的。
Linux:很多Linux类的系统,往往都是,默认情况下,就已经帮你安装好了Python了。所以,此时,你也就可以不用再去安装Python,就可以运行Python脚本了。
注:有时候,可能Linux系统本身,已经帮你安装好的那个Python,版本可能比较低,所以有时候,有些人可能选择再重新安装一个新版本。当然,如果只是写写普通的Python脚本,使用默认的,虽然版本不是那么新的Python,也就足够用了。
关于Linux系统,有不同发行版。对此不熟悉的,可以参考: 【整理】什么是Linux系统
Mac:默认时候,好像也是已经,类似于Linux中,就帮你安装好了Python了。也不用你再安装了。
在Windows中运行Python脚本
简单说,可以在Windows的cmd中去运行Python脚本。
详细解释可参考:
更详细的解释,可以去看:
【整理】【多图详解】如何在Windows下开发Python:在cmd下运行Python脚本,如何使用Python Shell(command line模式和GUI模式),如何使用Python IDE
在Linux中运行Python脚本
在终端(Terminal)中直接运行即可。
在Mac中运行Python脚本
在终端(Terminal)中直接运行即可。
转载请注明:在路上 » 【整理】Python语言简介