Welcome To Jeremy's Blog --------------------------            JeremyYu

1.4 基础数据类型 -- 列表与元组


1列表:

列表是一种容器, 属于序列类型, 是序列中的可变数据类型. 用[ ]来表示, 其数据类型关键字为list, 其中的每一个元素用”,”进行分割, 其元素可以是任意类型, 且可以混合类型, 比如整型与字符串共存于同一个列表容器中: lst = [1, “hello”]


2.序列通用操作(字符串, 列表, 元组)

(1).适用所有序列的操作

项目 描述
s[j] 返回一个序列的元素
s[i: j] 返回一个切片
s[i:j:stride] 返回一个扩展切片
len(s) s中的元素个数
min(s) s中的最小值
max(s) s中的最大值
sum(s) s中各项的和(元素需全为数字)
all(s) 检查s中的所有项是否为True
any(s) 检查s中的任意项是否为True

返回顶部

 

 1 # 创建一个列表
 2 lst=[1,2,3]
3 # 队列表进行索引取值 4 a = lst[0] 5 print(a)# 结果为:1

6 # 对列表进行切片, 注意这里索引从0开始, 切片不包括索引为2的元素 7 b = lst[0:2] 8 print(b)# 结果为: [1, 2]

9 # 指定步长对列表切片, 步长2代表每两个元素取一个lst[:]代表切片从头到尾全切 10 c = lst[::2] 11 print(c)# 结果为:[1, 3]

12 # 输出列表长度 13 print(len(lst))# 结果为: 3

14 # 输出列表元素中的最小值 15 print(min(lst))# 结果为: 1

16 # 输出列表元素中的最大值 17 print(max(lst))# 结果为: 3

18 # 对列表中的所有元素求和, 要求序列元素全部为数字 19 print((sum(lst)))# 结果为: 6

 


 

(2).针对可变序列类型(列表)的操作

项目描述
s[i] = v 序列赋值
s[i:j] = t 切片赋值
s[i:j:stride] = t 扩展切片赋值
del s[i] 序列项删除
del s[i:j] 切片删除
del [i:j:stride] 扩展切片删除

返回顶部

 1 # 定义两个列表
 2 lst1 =[1,2,3,4,5]
 3 lst2 =[1,2,3,4,5]
4 # 将lst1的0索引元素赋值为9 5 lst1[0]=9 6 print(lst1)# 结果为: [9, 2, 3, 4, 5]

7 # 将lst1的前两个元素变为1, 2 8 lst1[0:2]=[1,2] 9 print(lst1)# 结果为: [1, 2, 3, 4, 5]

10 # 将lst1中的元素从0索引开始, 每2个取一个, 并将该元素的值变为0 11 lst1[::2]=[0,0,0] 12 print(lst1)# 结果为: [0, 2, 0, 4, 0]

13 # 删除lst1的0索引元素 14 del lst1[0] 15 print(lst1)# 结果为: [2, 0, 4, 0]

16 # 删除lst的前3个元素 17 del lst1[0:3] 18 print(lst1)# 结果为: [0]

19 # 对lst2中的元素从0索引开始每2个其一个并进行删除 20 del lst2[::2] 21 print(lst2)# 结果为: [2, 4]

返回顶部 

 


 

3.列表的相关方法

方法分类 方法 描述
增操作    lst.append(x) 追加元素
lst.insert(index, x) 插入元素
lst.extend([…]) 迭代添加
删操作   lst.pop([index]) 弹出元素
lst.remove(x) 移除元素
  改操作     lst[index] = x 序列项赋值
lst[i:j] = […] 切片赋值
lst.reverse() 反序列表
lst.sort([key[, reverse]]) 排序(默认升序)
查操作   lst.count(x) 计算x在列表中出现的次数
lst.index(x[, start[, stop]]) 从列表中查找某一元素在指定切片内第一次出现的索引位置

返回顶部

 1 lst =[1]
2 # 给列表追加一个元素2 3 lst.append(2) 4 print(lst)# 结果为:[1, 2]

5 # 在列表的开头插入一个元素"a" 6 lst.insert(0,0) 7 print(lst)# 结果为:["a", 1, 2]

8 # 向列表中迭代添加一个列表[3, 4, 5] 9 lst.extend([3,4,5])# 结果为:["a", 1, 2, 3, 4, 5]

10 # 弹出列表倒数第二个元素4 11 lst.pop(-2) 12 print(lst)# 结果为:["a", 1, 2, 3, 5]

13 # pop()不指定参数则默认弹出列表最后一个元素 14 lst.pop() 15 print(lst)# 结果为:["a", 1, 2, 3]

16 # 移除列表元素"a" 17 lst.remove("a") 18 print(lst)# 结果为: [1, 2, 3]

19 # 将列表的第一个元素修改为4 20 lst[0]=4 21 print(lst)# 结果为: [4, 2, 3]

22 # 将列表的后两个元素修改为7,6 23 lst[1:]=[7,6] 24 print(lst)# 结果为: [4, 7, 6]

25 # 将列表反序 26 lst.reverse() 27 print(lst)# 结果为: [6, 7, 4]

28 # 将列表降序排序(升序只需要去掉reverse参数即可) 29 lst.sort(reverse=True) 30 print(lst)# 结果为: [7,6,4]

31 # 计算7在lst中出现的次数 32 print(lst.count(7))# 结果为: 1

33 # 查看1在lst2中索引1到5的区域第一次出现位置 34 lst2 =[1,2,1,3,4,5] 35 print(lst2.index(1,2))# 结果为: 2

 

返回顶部


 

4.元组

元组是Python的基本数据类型之一,用小括号括起来,里面可以放任何数据类型的数据,元组为用户提供查询,循环及切片,但不可以更改.

说明:

  • 针对元组的不可变是指元组的元素不可变,但当元组内部的元素是可变数据类型是,元组元素的子元素是可变的.如:元组中包含列表,该列表不可变,但该列表内部的元素可以变.
  • 当元组只有一个元素且该元素为整型,则此时元组的数据类型为元组.
  • 元组内只有一个元素时,元素是什么类型,则元组就是什么类型.元组元素为空或其内具有两个及两个元素以上时,则元组的类型为元组.

5.元组相关方法:

  • tuple.count(object):统计元组中指定对象的个数

  • tuple.index(object):索引元组中指定元素的位置

    • index()方法会从左到右索引元组中第一个指定的元素位置

    • index()方法如果索引的对象不存在,则报错”ValueError: tuple.index(x): x not in tuple”

  • length = len(tuple):确定元组的长度

返回顶部

posted on 2018-03-10 16:29  Jeremy_Yu  阅读(88)  评论(0)    收藏  举报

导航