列表和元组
数据结构是通过某种方式(如对元素进行编号)组织在一起的数据元素的集合,这些元素可以是数字或字符。在Python中,最基本的数据结构是序列。Python包含6种内建序列,即列表,元组,字符串,Unicode字符串,buffer对象和xrange对象。
Python中所有序列都可以进行一些特定操作,包括索引,分片,序列相加,乘法,成员资格,长度,最小值和最大值。
一,序列
1.索引
定义一个列表 frunt = ["a","b","c","d","e"]
输出下标为4的元素
print frunt[4]
结果: e
2.分片
定义一个列表
frunt = ["a","b","c","d","e"]
获取第一个到第三个的元素
sfruit = frunt[0:3]
print sfruit
结果: [‘a‘, ‘b‘, ‘c‘]
取得整个数组
sfruit = frunt[:]
print sfruit
结果: [‘a‘, ‘b‘, ‘c‘, ‘d‘, ‘e‘]
3.序列相加
frunt = ["a","b","c"]
frunt1 = ["d","e"]
frunt2 = frunt + frunt1
print frunt2
结果: [‘a‘, ‘b‘, ‘c‘, ‘d‘, ‘e‘]
4.乘法
frunt = ["a","b","c"] * 5
print frunt
结果: [‘a‘, ‘b‘, ‘c‘, ‘a‘, ‘b‘, ‘c‘, ‘a‘, ‘b‘, ‘c‘, ‘a‘, ‘b‘, ‘c‘, ‘a‘, ‘b‘, ‘c‘]
5.成员资格
3 in (1, 2, 3)
结果: True
6.长度
frunt = ["a","b","c","d","e"]
length = len(frunt)
print length
结果: 5
7.最大值和最小值
num = [1,2,3,4,5]
nums = max(num)
print nums
结果: 5
num = [1,2,3,4,5]
nums = min(num)
print nums
结果: 1
二,列表
列表的操作有索引,分片,序列相加,乘法,元素赋值,增加元素,元素删除,分片赋值和列表方法,这些都是更新列表。
一.更新列表
1.元素赋值
num = [1,2,3,4,5]
num[1] = 6
print num
结果:[1, 6, 3, 4, 5]
2.增加元素
num = [1,2,3,4,5]
num.append(6)
print num
结果:[1, 6, 3, 4, 5,6]
3.元素删除
1. 直接删除所选元素
num = [1,2,3,4,5]
num.remove(2)
print num
结果: [1,3,4,5]
2. 根据下标删除元素
num = [1,2,3,4,5]
del num[2]
print num
结果: [1,2,4,5]
4.分片赋值
show = list(‘自兴人工智能‘)
show [5:] =list(‘学院‘)
print show
结果: [‘自‘,‘兴‘,‘人‘,‘工‘,‘智‘,‘能‘,‘学‘,‘院‘]
二.嵌套列表
num = [1,2,3,4,5]
num1 = [1,2,3,4,5,6,7,8]
mix = [num,num1]
print mix
结果: [[1, 2, 3, 4, 5], [1, 2, 3, 4, 5, 6, 7, 8]]
三.列表方法
1
list.append(obj)
在列表末尾添加新的对象
2
list.count(obj)
统计某个元素在列表中出现的次数
3
list.extend(seq)
在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)
4
list.index(obj)
从列表中找出某个值第一个匹配项的索引位置
5
list.insert(index, obj)
将对象插入列表
6
list.pop(obj=list[-1])
移除列表中的一个元素(默认最后一个元素),并且返回该元素的值
7
list.remove(obj)
移除列表中某个值的第一个匹配项
8
list.reverse()
反向列表中元素
9
list.sort([func])
对原列表进行排序
10
list.clean()
清空列表
11
list.copy()
复制列表
12
list.sort(key=len)
由短到长排序
list.sort(key=len,reverse=True)
由长到短排序
list.sort(reverse=True)
排序后逆序
三.元组
Python的元组与列表类似,不同之处在于元组的元素不能修改。元组使用小括号,列表使用方括号。元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。
1.创建空元组
tup1 = ();
2.元组中只包含一个元素时,需要在元素后面添加逗号
tup1 = (50,);
元组的基本操作访问元组,修改元组,删除元组,索引和截取等操作。
1. 访问元组
num = (1,2,3,4,5)
print (num[1:5])
结果:(2, 3, 4, 5)
2.修改元组
元组中的元素不能修改,可以进行连接组合
num = (1,2,3,4,5)
num1 = (1,2,3,4,5,6,7)
print (num,num1)
结果: ((1, 2, 3, 4, 5), (1, 2, 3, 4, 5, 6, 7))
3.删除元组
元组中的元素值不能删除,可以使用del语句删除整个元组
num = (1,2,3,4,5)
del num
print num
结果:Traceback (most recent call last): File "C:/Users/?????/PycharmProjects/untitled1/dame1.py", line 83, in <module> print num NameError: name ‘num‘ is not defined
4.索引和截取
num = (1,2,3,4,5)
nums = num [2]
print nums
结果: 3
num = (1,2,3,4,5)
nums = num [2:]
print nums
结果:(3, 4, 5)
3.元组内置函数
len(tuple)
计算元组元素个数。
3
max(tuple)
返回元组中元素最大值。
4
min(tuple)
返回元组中元素最小值。
5
tuple(seq)
将列表转换为元组。