Python的变量不用定义类型,所以Python是一种动态语言,而需要明确定义类型的语言,如C,JAVA等则成为静态语言。
x = 1
x = 4也同样没问题,
L= list(range(3))
一个数组中也可以存不同类型的值,如L2(true,1,2.0)
这种神操作,所以Python牛逼。
牛逼的表象必有被草的后台,Python底层是用C写的,一个值类型,底层要定义四块以达到牛逼的表象。更何况一个列表中有这么多类型,C的一个值类型就是写在内存中的可编码的值,可是Python就要经过自己的套路才是看到的值。这里不详细分析底层代码了,也是因为我写到这里,我回忆不起来看过的东西,感兴趣的伙伴可以去研究下底层代码。
python这种类型方式对我们用起来来说是方便了很多,但是浪费了很多系统资源,那有没有那种效率高的只存一种类型的列表呢。
当然有。
从3.3版本后就有了array模块
import array
L = list(range(10))
A = array.array(i,L)
A 就是一种高效率的列表
转换为A 的方法中的i,是代表值类型。
另外还有方法就是在Numpy模块中
import numpy as np