1.6 序列的通用操作

Posted avention

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了1.6 序列的通用操作相关的知识,希望对你有一定的参考价值。

下面几个小节分别会介绍到的list、tuple、str等都属于序列。

先介绍序列通用操作,序列的通用操作部分对list、tuple、str都适用,此处以list为例进行演示。

在讲序列的通用操作之前,先讲一下列表的构造。
列表的构造方法:
  (1)直接把列表的元素直接放在[]中,
  (2)使用全局list()函数构造列表。list会把传进来的序列值进行拆分。其他可迭代对象也能生成列表。

#先生成一个list类型的对象

1   >>> l = [张三,李四,王五]
2   >>> l
3   [张三, 李四, 王五]

 

通用操作一:

  判断元素x是否在l 之内       x in l / x not in l 判断结果是bool型

 1   >>> l1
 2   [张三, 李四, 王五]
 3   >>> 张三 in l1
 4   True
 5   >>> 张三 not in l1
 6   False
 7   >>> 陈六 in l1
 8   False
 9   >>> 陈六 not in l1
10   True
11   >>> 

 

通用操作二:

  连接序列 l1 + l2 将两个序列拼接成一个序列。l1和l2在拼接前后不变,是生成了一个新的对象。

1   >>> l1=l = [‘张三‘,‘李四‘,‘王五‘]
2   >>> l2=[‘Marry‘,‘Sara‘] #说起这个Sara,就想起了越狱中女主角,好喜欢她
3   >>> l1 + l2
4   [‘张三‘, ‘李四‘, ‘王五‘, ‘Marry‘, ‘Sara‘]
5   >>> l1
6   [‘张三‘, ‘李四‘, ‘王五‘]
7   >>> l2
8   [‘Marry‘, ‘Sara‘]
9   >>>

 

通用操作三:

  重复序列元素 l1 * n       n就是你想重复的次数

1   >>> l1*2
2   [张三, 李四, 王五, 张三, 李四, 王五]
3 
4   >>> l1
5   [张三, 李四, 王五]     #果不其然,原列表不变

 

通用操作四:

  通过下标获取元素 l1[i]     注意下标i是从0开始的

1   >>> l1[1]
2 
3   李四

 

通用操作五:

  访问指定索引范围 l1[i:j]    注意编程语言中的范围一般都是含头不含尾的,这个操作又叫切片

1 >>> l1[1:2]
2 [李四]
3 >>> 

 

通用操作六:

  按步长访问指定范围索引 s[i:j:k] k即为步长。步长值默认为1,也可以自己设置步长值。

1 >>> l = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18]
2 >>> l[2:15:3]
3 [3, 6, 9, 12, 15]

 

通用操作七:

  获取序列长度 len(s)

1 >>> l
2 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18]
3 >>> len(l)
4 18
5 >>> 

 

通用操作八:

  获取序列最小值 min(s)、获取序列最大值 max(s)   元素必须是可比较大小的。

1 >>> l
2 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18]
3 >>> min(l)
4 1
5 >>> max(l)
6 18
7 >>> 

 

通用操作九:

  获取序列元素的总和: sum ( s )

>>> l
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18]
>>> sum(l)
171
>>> 

 

通用操作十:

  检索某个元素第一次出现的位置下标 index()

1 >>> l
2 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18]
3 >>> l.index(3)
4 2
5 >>> 

 

通用操作十一:

  统计序列中某个元素出现的次数count()

1 >>> l.append(8)
2 >>> l
3 [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 8]
4 >>> l.count(8)
5 2
6 >>> 

 

以上是关于1.6 序列的通用操作的主要内容,如果未能解决你的问题,请参考以下文章

4. 编程规范和编程安全指南--go语言

4. 编程规范和编程安全指南--go语言

Huawei_Netconf_Ncclient

Python通用序列操作

序列的通用操作

29课时 可变序列 不可变序列 通用操作