Python 数据知识汇总

python 语言的三大基本点是:数据结构、函数、对象类。基本上所有应用都是围绕这三点进行展开的。

一、数据结构

1.1可变数据与不可变数据类型

       python的数据类型主要有整型int、浮点型float、字符串str、列表list、元组tuple、字典dict、集合set、类class。根据其在内存中引用的方式不同分为不可变数据类型(整型int、浮点型float、元组tuple、字符串str)和可变数据类型(列表list、字典dict、集合set、类class)。引用故名思义是调用内存中的数据,一般是通过变量来调用数据。

例如 :a=1,a指向1所在的内存引用地址。   

      着重解释一下可变与不可变数据:可变与不可变主要指这个数据在内存中的存储位置是否发生改变。例如:    

a=1
a1=1
print(id(a))
print(id(a1))
print("----------------------")
b=[]
b1=[]
print(id(b))
print(id(b1))

 打印结果如下:

1862322304
1862322304
----------------------
10110416
10111576

    对于int型,a=1和a1=1,a和a1变量同时指向1的内存引用地址,不论使用多少赋值语句,数字1在内存中的存储地址都不会发生改变,充其量是多个变量同时引用1的内存地址,系统不会再给1开辟另外的内存空间进行存储; 但对于list这种数据类型,正好相反,b和b1两个变量指向两个内存引用地址,相当于[]在系统中有两个存储区域,变量引用一次,开辟一个区域存储[]。总结:对于可变数据类型,数据在内存中的存储位置不唯一,可以改变,引用一次相当于在内存中开辟一个存储区域;对于不可变数据,数据在内存中的存储位置是唯一的。

       现在再来看 这一语句: a=数据1。其在python中的运行机制,可以解释为(推测) :判断数据1的类型,如果是可变数据,则开辟空间,存储数据1,将数据1的引用地址给a;如果是不可变数据,查找内存中是否有该数据,若有,将数据1的引用地址给a,若无,开空间,存储数据1,然后将引用地址给a。

1.2 数据操作

       数据的操作一般是查改增删。

       查找:find ,index,count , len ;

       改(针对字符串):sort,reverse,split ,replace, upper, lower, join,capitalize ;

       删:del ,remove, pop 

       增:insert ,add, append ,extend;

       判断(针对字符串):isdecimal,islower,isalpha, issupper, startswith,endswith 。当然字符串的操作可以用正则表达式进行代替

猜你喜欢

转载自www.cnblogs.com/xuehaiwuya0000/p/10800056.html