编程语言主要分为编译型和解释型,静态语言和动态语言,强类型和弱类型,混合语言等。

编译型语言:通过编译器把源代码编译(compile)成机器语言,在经过链接(linker)将源代码中所使用的库串联起来生成可执行二进制文件,这样运行时 计算机可以直接以机器语言来运行程序。优点:运行效率高。缺点:编译之后如果需要修改代码需要重新编译整个模块。编译的时候根据对应的运行环境生成机器码,不同的操作系统之间移植就会有问题,需要根据运行的操作系统环境编译不同的可执行文件,代表语言:C,C++,object-C等。

解释型语言:不需要编译,只在程序运行时才逐条翻译成机器语言。优点:跨平台支持比较好,缺点:程序运行效率会比较慢。如:python,php,Perl等。

动态语言:动态类型语言,是指数据类型,结构(如对象,函数)的检查是在运行时做的。用动态类型语言编程时,不用给变量指定数据类型,该语言会在你第一次赋值给变量时,在内部记录数据类型,结构。在运行代码时可以根据某些条件改变变量的数据类型,结构。也就是说在运行时代码 可以根据某些条件改变自身结构,数据类型。代表语言:python,PHP,C#等。

静态语言:静态类型语言,是指数据类型,结构的检查是在运行前(如编译阶段)做的,运行时结构不可变。代表语言:C,C++等。

强类型语言:如果某个变量的数据类型不经过强制转换,该变量类型是不会改变的。

弱类型语言:变量可以根据赋值类型调整自身的数据类型。

混合型语言:既然编译型和解释型各有缺点就会有人想到把两种类型整合起来,取其精华去其糟粕。就出现了半编译型语言。比如C#,C#在编译的时候不是直接编译成机器码而是中间码,.NET平台提供了中间语言运行库运行中间码,中间语言运行库类似于Java虚拟机。.net在编译成IL代码后,保存在dll中,首次运行时由JIT在编译成机器码缓存在内存中,下次直接执行。Java先生成字节码再在Java虚拟机中解释执行。严格来说混合型语言属于解释型语言。C#更接近编译型语言。

由此可知python语言是一门解释,动态,弱类型语言。

python语言的优点:

1、python的定位是“优雅”、“明确”、“简单”,所以python程序看上去总是简单易懂,对于初学者容易入门。

2、开发效率高,python有非常强大的第三方库,基本上你想通过计算机实现任何功能,python官方库里都有相应的模块进行支持,直接下载调用后,在基础库的基础上进行开发,大大降低开发周期,避免重复造轮子。

3、高级语言,当使用python语言编写程序时,无需考虑如何管理内存等底层细节。

4、可移植性,由于它开源的本质,python已经被移植在许多平台上,如果你小心的避免使用依赖于系统特性,那么你的所有python程序无需修改就几乎可以在市场上所有的系统平台运行。

5、可扩展性,如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,可以把部份程序用C或C++编写库,然后用python调用。

6、可嵌入式,可以把python嵌入到C/C++程序,从而向你的程序用户提供脚本功能。

python语言的缺点:

1、速度慢,由于是解释型所以运行速度相比编译型语言要慢,跟Java相比也要慢一些。

2、代码不能加密,因为python是解释型语言,它的源码都是以明文形式存放的,所以如果项目要求源代码必须保密或者加密,那一开始就不应该考虑用python来实现。

3、强制缩进,单行语句不用写分号对于习惯了C/C++用户可能不是太习惯。

4、Python2与 Python3不兼容,因为Python没有向后兼容,给所有的Python工程师带来了烦恼。

python是一门高级的计算机语言对吗_Python是一门怎样的编程语言相关推荐

  1. python是一门高级的计算机语言_为有抱负的开发者推荐的最佳 10 门编程语言

    编程是技术革新的核心,当今的编程语言有能力让开发者不再束缚他们的潜力来构建未来的技术. 如果你是一名具有前瞻性的开发者或者想成为一名具有前瞻能力的开发者,那么,是时候开始学习编程了,至少在最好的编程语 ...

  2. Python入门篇-高级数据类型集合(set)和字典(dict)

    Python入门篇-高级数据类型集合(set)和字典(dict) 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.集合(set) 1>.集合的特点 约定set 翻译为集合c ...

  3. Python中的高级数据结构详解

    这篇文章主要介绍了Python中的高级数据结构详解,本文讲解了Collection.Array.Heapq.Bisect.Weakref.Copy以及Pprint这些数据结构的用法,需要的朋友可以参考 ...

  4. python里面的高级特性

    python里面的高级特性 1.切片(Slice) >>> L[0:3] ['Michael', 'Sarah', 'Tracy'] L[0:3]表示,从索引0开始取,直到索引3为止 ...

  5. python 23 selenium高级和使用代理

    python 23 selenium高级和使用代理 1. selenium使用代理 第一步:创建配置对象 from selenium.webdriver import Chrome,ChromeOpt ...

  6. python自带编辑器如何海龟作图_使用Python中的高级turtle(海龟)作图方法

    在Python里,海龟不仅可以画简单的黑线,还可以用它画更复杂的几何图形,用不同的颜色,甚至还可以给形状填色. 一.从基本的正方形开始 引入turtle模块并创建Pen对象: >>> ...

  7. python的应用不是以下哪种_python的实际应用有哪些?

    Python作为最受欢迎的编程语言之一,主要是以下方面有应用. 下面,我就简单的介绍一下,Python在上述的领域的应用吧. 一,人工智能 近些年,人工智能的一直被炒的很热,很多人都意识到这是未来的一 ...

  8. python是一种动态语言这意味着_Python如何能成为全球最受欢迎的编程语言?该不该学Python?...

    全文共3304字,预计学习时长10分钟 图源:(Python logo courtesy of https 有一种语言在过去十年受喜爱度一路飙升,成为最受欢迎的一种编程语言,它是谁? 千呼万唤始出来, ...

  9. python修改列表中字典内的值_python修改字典内key对应值的方法

    python学习笔记:字典 python版本:Python 2.6.6 系统环境:CentOS release 6.2 x86_64 本文参考了互联网上前辈的一些文章 一.字典是python中最灵活的 ...

最新文章

  1. python 数组升序_python简单数据清洗和分析
  2. setDAta 字符串拼接
  3. 关于排版中经常见的问题的解决方法
  4. mysql 日志的存放形式_mysql日志详细解析
  5. python通过什么来体现逻辑关系_Python语言通过()来体现语句之间的逻辑关系。
  6. python PyQt5 setGeometry()函数(设置当前QWidget的显示位置和大小)
  7. ITK:计算纹理特征
  8. java代码简单操作Redis数据Jedis jar
  9. redis基本类型以及优点特性
  10. vs2008生成自定义dll,VS2008发布、生成网站时设置固定的dll文件名
  11. 多线程环境下,程序真是危机四伏
  12. 【Java】用Jackson进行JSON序列化/反序列化操作
  13. python的判断与循环
  14. 最长回文(Manacher算法模板)
  15. 关于vertical layout不能水平居中对齐的原因
  16. MAC OS Finder 中快速定位指定路径
  17. 无线路由器密码破解-BT3-spoonwep2 (转http://www.ylmf.net/read.php?tid=1483881)
  18. 1.1 电 电流 电压 电路 基本电子元件
  19. 两台计算机互联方案,如何连接两台电脑
  20. outlook连接谷歌企业邮箱(转)

热门文章

  1. Django从理论到实战(part55)--将网站上传到GitHub
  2. Django从理论到实战(part8)--URL中添加参数
  3. Django(part12)--模板的标签
  4. delphi控件切图界面闪烁_小程序设计,不得不说的7个坑 (附资源:新版小程序 UI 控件,Sketch 版)...
  5. 讲讲OC曲线是什么?
  6. Angular 内容投影 content projection 关于条件渲染问题的单步调试
  7. SAP 电商云 Spartacus UI Quick Order 的路由和 CMS 实现
  8. SAP Spartacus RouterState
  9. SAP Spartacus里如何查找所有可以focus的HTML元素
  10. JSP每隔指定的时间段自动刷新页面