码迷,mamicode.com
首页 > 编程语言 > 详细

Python基础1-Python基础概念

时间:2018-02-23 13:30:51      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:问题   title   otl   windows   功能   开发   wxpython   代码   win   

 

本节内容

 

  1. Python是一门什么样的语言
  2. Python主要应用领域
  3. Python的有缺点

 

 

 

1.Python是一门什么样的语言

Python是解释型语言

编译型语言解释:一次把所有的代码转换成机器语言,然后写成可执行文件。

解释型语言解释:程序每执行到源程序的某一条指令,会有一个称之为解释程序的外壳程序(解释器)将源代码转换成二进制代码以供执行,总言之,就是不断地解释、执行、解释、执行。

编译型vs解释型

编译型
优点:编译器一般会有预编译的过程对代码进行优化。因为编译只做一次,运行时不需要编译,所以编译型语言的程序执行效率高可以脱离语言环境独立运行
缺点:编译之后如果需要修改就需要整个模块重新编译。编译的时候根据对应的运行环境生成机器码,不同的操作系统之间移植就会有问题,需要根据运行的操作系统环境编译不同的可执行文件

解释型
优点:有良好的平台兼容性,安装了解释器(虚拟机)后在任何环境中都可以运行。灵活,修改代码的时候直接修改就可以了,可以快速部署,不用停机维护。

缺点:每次运行的时候都要解释一遍,性能上不如编译型语言

 

Python是动态类型语言

动态类型语言:动态类型语言是指在运行期间才去做数据类型检查的语言,也就是说,在用动态类型的语言编程时,永远也不用给任何变量指定数据类型,该语言会在你第一次赋值给变量时,在内部将数据类型记录下来。

静态类型语言:数据类型是在编译期间检查的,也就是说在写程序时要声明所有变量的数据类型

 

Python是强类型定义语言

强类型定义语言:强制数据类型定义的语言。也就是说,一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了。

弱类型定义语言:数据类型可以被忽略的语言。它与强类型定义语言相反, 一个变量可以赋不同数据类型的值。

 

 

 

2.Python主要应用领域:

 

  • 云计算: 云计算最火的语言, 典型应用OpenStack。
  • WEB开发: 众多优秀的WEB框架,众多大型网站均为Python开发,Youtube, Dropbox, 豆瓣, 知乎等。典型WEB框架有Django, Flask。
  • 科学运算、人工智能: 典型库NumPy, SciPy, Matplotlib, Enthought librarys,pandas。
  • 系统运维: 运维人员必备语言。
  • 金融:量化交易,金融分析,在金融工程领域,Python不但在用,且用的最多,而且重要性逐年提高。原因:作为动态语言的Python,语言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很适合用,生产效率远远高于c,c++,java,尤其擅长策略回测。
  • 图形GUI: PyQT, WxPython,TkInter。

 

3.Python的优缺点

优点:

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

缺点:

  1. 速度慢,Python 的运行速度相比C语言确实慢很多,跟JAVA相比也要慢一些,但其实这里所指的运行速度慢在大多数情况下用户是无法直接感知到的,必须借助测试工具才能体现出来。
  2. 代码不能加密,因为PYTHON是解释性语言,它的源码都是以名文形式存放的,这不一定算是一个缺点,如果你的项目要求源代码必须是加密的,那你一开始就不应该用Python来去实现。
  3. 线程不能利用多CPU问题,这是Python被人诟病最多的一个缺点,GIL即全局解释器锁(Global Interpreter Lock),是计算机程序设计语言解释器用于同步线程的工具,使得任何时刻仅有一个线程在执行,Python的线程是操作系统的原生线程。在Linux上为pthread,在Windows上为Win thread,完全由操作系统调度线程的执行。一个python解释器进程内有一条主线程,以及多条用户程序的执行线程。即使在多核CPU平台上,由于GIL的存在,所以禁止多线程的并行执行。

 

参考链接:http://www.cnblogs.com/alex3714/articles/5465198.html

 

Python基础1-Python基础概念

标签:问题   title   otl   windows   功能   开发   wxpython   代码   win   

原文地址:https://www.cnblogs.com/chenqiyi/p/8461266.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!