python与c语言的关系

Python08

python与c语言的关系,第1张

1、语言类型不同

Python是一种动态类型语言,又是强类型语言;C语言是静态类型语言,在编译期间就确定数据类型的语言;

2、内存管理不同

Python使用自动垃圾收集器进行内存管理;C语言中程序员必须自己进行内存管理;

 3、对象机制不同

Python所有的数据,都是由对象或者对象之间的关系表示的,函数是对象,字符串是对象,每个东西都是对象的概念;C语言中没有对象这个概念,只有数据的表示。

4、运行效率不同

Python有一个GIL锁,导致其对多线程支持不够好,运行速度比较慢;C语言比较快,是很好的底层语言,运行效率上优于Python。

5、变量类型不同

Python有六个标准的数据类型,包含Number数字、String字符串、List列表、Tuple元祖、Sets集合、Dictionary字典;数字类型有四种,包含:整数、布尔型、浮点数和复数。C语言也分为四大类,其中包含基本类型、枚举类型、void的类型、派生类型,基本类型包含整数类型、浮点类型。

6、函数库的使用方法不同

C语言中使用库函数,需要引入头文件用include引入;Python中需要引入别的模块或者函数时需要用import引入。

Python中的成员资格(membership)检查运算“in”,在列表(list)中遍历成员,时间复杂度为O(N)在字典(dict)中, 时间复杂度为O(N),测试结果如下:

把下面的程序中的"in"操作的列表实现

改为“in”操作的字典实现:

执行用时,从900ms,提升为60ms