申通物流单号查询-Python语言自带的数据结构有哪些?

软件测试 list 804浏览 236评论

Python作为一种脚本语言,其要求强制缩进,使其易读、美观,它的数据类型可以实现自动转换,而不需要像C、Java那样给变量定义数据类型,使其编写非常方便简单,所以广受大家的欢迎。

现如今,Python已经广泛的应用于数据分析、数据挖掘、机器学习等众多科学计算领域。所以既然涉及到科学计算,深入了解Python原生提供的数据结构是很有必要的,这样才能在数据的海洋中游刃有余、得心应手。本文便以此展开,做一个归纳整理,方便收藏。

首先介绍的数据结构是序列结构,所谓序列,也就是申通物流单号查询顺序是很重要的,不同申通物流单号查询顺序的序列是不同的序列。Python中含有六种内建的序列结构,分别是list、tuple、string、unicode、buffer、xrange。

list,列表是一种序列,可以看做是一种数组,但不同的于其它语言的是,Python列表中的申通物流单号查询可以是任何数据类型,诸如,数字、字符串等等。

//1.通过中括号括起已知的申通物流单号查询创建list

mylist = ['orange', 'apple', 1,2,3.14];

//2.通过中括号创建空list,然后用append()追加动态申通物流单号查询

mylist = [];

mylist.append('orange');

//3.通过list()方法创建空list

mylist = list();

//通过中括号加下对应下标选取,下标从0开始,-1为倒数第一个申通物流单号查询,以此类推

mylist[0];

mylist[-1];

切片是Python中序列结构独有的一种操作,意思是从序列中选取一个子序列,凡是序列均可切片,list是序列,所以list可以切片。切片方法:

//通过[begin:end]方式完成切片

mylist = [1,2,3,4,5];

mylist[0:2]; //生成的序列为[1,2,3]

list.append(x),在列表的末尾添加一个申通物流单号查询。

list.insert(i, x),在给定的位置插入一个申通物流单号查询,第一个参数是要插入的申通物流单号查询的索引。

list.remove(x),移除列表中第一个值为 x 的申通物流单号查询,如果没有这样的申通物流单号查询,则抛出异常。

list.clear(),删除列表中所有的申通物流单号查询。

list.index(x),返回列表中第一个值为 x 的申通物流单号查询的从零开始的索引,如果没有这样的申通物流单号查询,则抛出异常。

list.count(x),返回申通物流单号查询 x 在列表中出现的次数。

list.reverse(),反转列表中的申通物流单号查询。

tuple,元组和列表一样,都以看做是一种数组,申通物流单号查询可以是任何数据类型,甚至可以嵌套。唯一的区别是,元组内的申通物流单号查询一旦创建,是不可修改的,也不可追加。并且元组使用小括号创建,同样元组可切片,切片方法同list。

//1.通过小括号括起已知的申通物流单号查询创建tuple

mytuple = (1, 3, 'hello!')

//2.不可以用append()往tuple追加,因为tuple一旦创建,不可变更

//和列表一样,通过中括号加下对应下标选取,下标从0开始,-1为倒数第一个申通物流单号查询,以此类推

mytuple[0];

mytuple[-1];

1.3、string,unicode,buffer,xrange

mystring = 'orange';

mylist = ['o','r','a','n','g','e'];

由于string也是序列,所以也可以切片,切片就当做单个字符构成的list切片即可,很多原理类似,不做过多介绍。

unicode和string类似,不过可以支持原生unicode编码的序列,如\\u4f60\\u597d。

所谓散列结构,区别于上述序列结构,散列结构中,申通物流单号查询顺序是不重要的,顺序不同的散列,还是同一个散列。散列结构有set、申通物流单号查询。

set,集合,集合是由不重复申通物流单号查询组成的无序的集,重点是不重复,和数学中的集合类似。无序是散列结构的特点,集合是一种散列结构,所以集合也有无序的特点。

//和list很类似,可对应参考

//1.通过大括号括起已知的申通物流单号查询创建set

myset = {'red','blue',2.71};

//2.通过set()方法创建空set,注意不能用{}创建空set,这样创建的是空申通物流单号查询

//3.然后用add()添加动态申通物流单号查询,注意不是append

myset = set();

myset.add('yellow');

Python的set集合可以支持并集,交集,差集,对称差等数学运算:

//创建集合a

a = set('abracadabra');

//创建集合b

b = set('alacazam');

------------------

print(a)

//结果:{'a', 'r', 'b', 'c', 'd'}

------------------

print(a - b); //差集

//结果:{'r', 'd', 'b'}

------------------

print(a | b); //并集

//结果:{'a', 'c', 'r', 'd', 'b', 'm', 'z', 'l'}

------------------

print(a & b); //交集

//结果:{'a', 'c'}

------------------

print(a ^ b); //对称差

//结果:{'r', 'd', 'b', 'm', 'z', 'l'}

set.remove(x),移除集合中值为 x 的申通物流单号查询,如果没有这样的申通物流单号查询,则抛出异常。

set.isdisjoint(set2),判断两个集合是否包含相同的申通物流单号查询,如果没有返回 True,否则返回 False。

set.issubset(set2),判断集合set是否包含于set2

set.issuperset(set2),判断集合set是否包含set2,issubset与issuperset是一对互逆操作。

申通物流单号查询,字典,字典由键值对组成,具有唯一性,可变性。字典是可变对象但字典的键的唯一的,是不可变对象。理解字典的最好方式,就是将它看做是一个 键 : 值对的集合。

//1.通过大括号括起键值对创建申通物流单号查询

my申通物流单号查询 = {'name':'tom','**e':'24'};

//2.通过申通物流单号查询()方法创建申通物流单号查询

my申通物流单号查询 = 申通物流单号查询(name = 'tom',**e = 24);

//3.通过大括号创建空申通物流单号查询,然后通过中括号添加键值对

my申通物流单号查询 = {};

my申通物流单号查询['tel'] = '1300000000';

//需要已经知道键的名称,否则无法获取,除非遍历

my申通物流单号查询.get('tel');

申通物流单号查询.copy(),拷贝出一个新的字典。

申通物流单号查询.setdefault({'sex':'man'}),有则查,无则增。

申通物流单号查询.update({'sex':'male'}),有则改,无则增。

申通物流单号查询.pop('tel'),指定删除,参数必须要有需要删除的键。

申通物流单号查询.clear(),清空字典。

申通物流单号查询.keys(),查询字典中所有的键。

申通物流单号查询.values(),查询字典中所有的值。

申通物流单号查询.items(),查询字典中所有的键值对。

以上即为Python自带的数据结构,共分为序列结构和散列结构两大类,序列结构有list、tuple、string、unicode、buffer、xrange,散列结构有set、申通物流单号查询。