Python 是 解释型语言,强类型定义语言,动态类型定义语言

编译型语言 & 解释型语言

编译型语言:代码在执行前,需要编译(成机器语言文件,如 .exe 文件);以后再运行时,直接使用编译后的文件(如 .exe 文件)

# 1. Java、C++ 等属于编译型语言

# 2. 一次性的编译成平台相关的机器语言文件,运行时脱离开发环境,运行效率高

# 3. 与特定平台相关,一般无法移植到其他平台

# 4. 与其他编译型语言相比,Java 程序能够做到一次编译,处处运行,跨平台性非常强
# 是因为对 Java 程序而言,只认识一种操作系统,这个系统就是 JVM,字节码文件(扩展名为 .class 的文件) 就是 JVM 的可执行文件
# 所以 Java 程序并不理会真正执行哪个平台,只要知道如何执行于 JVM 就可以了,至于 JVM 实际上如何与底层平台沟通,那是 JVM 自己的事,
# JVM 实际上相当于 Java 程序的操作系统,JVM 就负责了 Java 程序的各种资源管理 # ========== 关于 Java 总结 ======== #
## 一. JVM 就是 Java 程序的操作系统,JVM 的可执行文件就是 .class 文件
## 二. Java 虚拟机屏蔽了操作系统之间的差异,但是不同的系统使用的虚拟机不同。

解释型语言:代码在执行时,才被解释器一行行动态翻译(成机器语言)和执行;以后再运行时,还需逐行动态翻译和执行

# 1.Python 属于解释型语言

# 2.解释型语言每次运行都需要将源代码解释称机器码并执行,效率较低

# 3.只要平台提供相应的解释器,就可以运行源代码,所以可以方便源程序移植

# 4.所以 Python 会有胶水语言之称

动态类型语言 & 静态类型语言

动态类型语言:在运行时检查类型的语言,即动态类型语言

# Python、PHP 是动态类型语言

# EXAMPLE:
>>> a = 1
>>> type(a)
<type 'int'>
>>> a = "s"
>>> type(a)
<type 'str'>

静态类型语言:在编译时检查类型的语言,即静态类型语言

# Java、C、C++ 是动态类型语言

# EXAMPLE:
Prelude> let a = "123" :: Int <interactive>:2:9:
Couldn't match expected type `Int' with actual type `[Char]'
In the expression: "123" :: Int
In an equation for `a': a = "123" :: Int

强类型语言 & 弱类型语言

强类型语言:如果一门语言很少隐式转换类型,即强类型语言

# Python、Java 是强类型语言

# EXAMPLE:
>>> 1+"2" # 会报 TypeError 错误
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: unsupported operand type(s) for +: 'int' and 'str'

弱类型语言:如果一门语言经常隐式转换类型,即弱类型语言

# PHP、JavaScript、Perl 是弱类型语言

# EXAMPLE:
> "1"+2
'12'

Python 是什么语言的更多相关文章

  1. python与其它语言进行比較

    近期python语言貌似比較火, 今天闲来无事,简单的看了下,算是个入门吧.一门语言之所以值得这么多人去学,必然有它的独到之处,以下我们就用python和其它语言做个比較. Pythond VS C# ...

  2. python和C语言混编的几种方式

    Python这些年风头一直很盛,占据了很多领域的位置,Web.大数据.人工智能.运维均有它的身影,甚至图形界面做的也很顺,乃至full-stack这个词语刚出来的时候,似乎就是为了描述它. Pytho ...

  3. 基于Spark环境对比Python和Scala语言利弊

    在数据挖掘中,Python和Scala语言都是极受欢迎的,本文总结两种语言在Spark环境各自特点. 本文翻译自  https://www.dezyre.com/article/Scala-vs-Py ...

  4. 建议3---理解Python与C语言的不同之处

    我们都知道,Python的底层是用C语言实现的,但切忌用C语言的思维和风格来编写Python代码.Python与其他语言有很多不同,以下来进行简单的分析: (1)"缩进"与“{}” ...

  5. 比较分析C++、Java、Python、R语言的面向对象特征,这些特征如何实现的?有什么相同点?

    一门课的课后题答案,在这里备份一下: 面向对象程序设计语言 –  比较分析C++.Java.Python.R语言的面向对象特征,这些特征如何实现的?有什么相同点? C++ 语言的面向对象特征: 对象模 ...

  6. python是c语言开发的

    python是c语言开发的. #c语言,没有字符串:字符串使用字符组表现   hello —五个字符 字符数组 [’h’,’e’,…’o’]   所以python中如果对一个字符串进行修改,就是在内存 ...

  7. python和C语言互相调用的几种方式

    ? 1 2 3 4 5 6 7 8 9 版权申明:本文为博主窗户(Colin Cai)原创,欢迎转帖.如要转贴,必须注明原文网址   http://www.cnblogs.com/Colin-Cai/ ...

  8. python与其他语言的区别

    C 和 Python.Java.C#等 C语言: 代码编译得到 机器码 ,机器码在处理器上直接执行,每一条指令控制CPU工作 其他语言: 代码编译得到 字节码 ,虚拟机执行字节码并转换成机器码再后在处 ...

  9. python和C语言的差别

    之前在公司一直做的是C语言的开发,然后做的都是业务方面的东西,做的是sdk,因为最近在找工作,然后今天面试的时候被问到C语言和Python的区别,自己只是简单的说了C是静态语言,在变量在使用前进行声明 ...

  10. python与c语言交互应用实例

    1.python向c语言写数据 1) 先将接收端编译成一个共享链接库gcc/arm-linux-gnueabihf-gcc -o bluetooth_proxy.so -shared -fPIC bl ...

随机推荐

  1. 什么是开发中经常说的'POCO'

    什么是开发中经常说的'POCO'Posted By : 蓝狐Updated On : 2015-07-19在看一些EF的文章,经常提到POCO这个词,但是,有没有比较详细的说这个POCO是什么意思呢? ...

  2. Django-初阶实例

    调用本地css文件的方法 setting.py里面的内容 import os # Build paths inside the project like this: os.path.join(BASE ...

  3. 前端面试之JavaScript中数组的方法!【残缺版!!】

    前端面试之JavaScript中数组常用的方法 7 join Array.join()方法将数组中所有元素都转化为字符串并连接在-起,返回最后生成的字 符串.可以指定一个可选的字符串在生成的字符串中来 ...

  4. 解决 win10 无法安装VS2019,visual studio installer下载进度始终为0

    解决 win10 无法安装VS2019,visual studio installer下载进度始终为0 目录 解决 win10 无法安装VS2019,visual studio installer下载 ...

  5. 【python刷题】LRU

    什么是LRU? LRU是Least Recently Used的缩写,即最近最少使用,是一种常用的页面置换算法,选择最近最久未使用的页面予以淘汰.该算法赋予每个页面一个访问字段,用来记录一个页面自上次 ...

  6. 关于MongoDB的简单理解(一)--基础篇

    一.什么是MongoDB? MongoDB是一个基于分布式文件存储的文档数据库,旨在简化开发和扩展,为WEB应用提供可扩展的高性能数据存储解决方案. MongoDB是一个介于关系数据库和非关系数据库之 ...

  7. Hash Array Mapped Trie

    Hash Array Mapped Trie   Python\hamt.c

  8. Vue中双向数据绑定是如何实现的?

    vue 双向数据绑定是通过 数据劫持 结合 发布订阅模式的方式来实现的, 也就是说数据和视图同步,数据发生变化,视图跟着变化,视图变化,数据也随之发生改变:核心:关于VUE双向数据绑定,其核心是 Ob ...

  9. FFT,NTT 笔记

    FFT 简介 FFT是干啥的?它是用来加速多项式乘法的.我们平时经常求多项式乘法,比如\((x+1)(x+3)=(x^2+4x+3)\).假设两个式子都是\(n\)项(不足的补0),那朴素的算法是\( ...

  10. Web信息收集之搜索引擎-Zoomeye Hacking

    Web信息收集之搜索引擎-Zoomeye Hacking https://www.zoomeye.org ZoomEye(钟馗之眼)是一个面向网络空间的搜索引擎,"国产的Shodan&quo ...