谈谈对Python和其他语言的区别

2018-11-22  本文已影响0人  莫辜负自己的一世韶光

从三个方面看Python

简洁 优雅 省略了各种大括号和分号,还有一些关键字,类型说明

解释型语言,运行的时候是一行一行的解释,并运行,所以调试代码很方便,开发效率高.

python是开源的,并且python的定位时任由其发展,应用领域很多
比如Web,运维,自动化测试,爬虫,数据分析,人工智能.Python具有非常完备的
第三方库

Python是一门语法简洁优美,功能强大无比,应用领域非常广泛,具有强大完备的第三方库的一门
弱类型的可移植,可扩展,可嵌入的解释型编程语言

Python是一门解释型语言,所以它的速度相较于c/c++ 会慢一些.但是并不影响使用
因为现在的硬件配置都非常的高,基本没什么影响.除非是一些实时性比较强的程序可能会受到
一些影响,但是也是有解决办法的,可以嵌入c\c++代码

GIL是什么

首先明确一点GIL并不是Python的特性,而是解释器的特性.它是Python的解释器Cpython用来做多线程的控制和调度用的全局锁.保证同一个时刻只有一个线程在运行.Python还有一些别的解释器,比如Jpython就没有GIL锁.Cpython现在已经成了python的实现标准,所以我们都说python具有GIL限制.

GIL的问题总体上来说是历史遗留的问题,以前的计算机的程序运行方式是单核多任务的模式,所以为了防止多个任务对同一资源进行同时的操作,竞争资源,才有了全局的解释器锁.但是随着近年来科技的进步,出现了多核,这样的话,全局锁就会限制多线程的并行.

解决方法

Python和Java相比:

Python比Java要简单.Python是函数为一等公民的语言,而Java是类为一等公民的语言.Python是弱类型语言,而Java是强类型语言.

Python和C相比

对于使用:
Python的类库齐全并且使用简洁,很少代码实现的功能用C可能要很复杂
对于速度:
Python的运行速度相较于C,绝对是很慢了.Python和CPython解释器都是C语言编写的

解释型:就是边解释边执行
编译性:编译后再执行

上一篇 下一篇

猜你喜欢

热点阅读