立即学习:https://edu.csdn.net/course/play/24797/282162?utm_source=blogtoedu
——列表和元组的简单使用
——本节目标
1. 通过索引访问元素
2. 子序列 (重点)
3. 序列运算 (重点)
——通过索引访问元素
. 列表和元组都可通过索引来访问元素:
. 一种是正向访问(从左到右),索引从0开始:第1个元素的索引为0,第2个元素索引为1,……以此类推;
. 一种是反向访问(从右到左),索引从-1开始:倒数第1个元素的索引为-1,倒数第2个元素的索引为-2,……以此类推。
例如:
# coding: utf-8
####################################
# 文件名称:access_ele.py
# 功能描述:创建序列
# 编写日期:2020-04-17
# 编写人员:
####################################
my_tuple = tuple(range(3 , 10))
print(my_tuple)
# len()函数可用于访问列表的长度
print(len(my_tuple))
print(my_tuple[2])
print(my_tuple[-2])
my_list = ['python' , 'swift' , 'kotlin' , 'java' , 'oc' , 'go']
print(my_list[3])
print(my_list[-3])
# 当用索引访问元素时,索引必须在-len~len-1之间,否则程序就会报错:index out of range
#print(my_list[6])
——子序列
. 前面介绍字符串操作类似的是,列表和元组同样也可使用索引获取中间一段,这种用法被称为slice(分片或切片)
. slice的完整语法格式如下:
. [start: end: step]
例如:
# coding: utf-8
####################################
# 文件名称:sub_seq.py
# 功能描述:创建序列
# 编写日期:2020-04-17
# 编写人员:
####################################
my_tuple = ('java' , 'js' , 20 , 100 , 'kotlin' , 'python' , 'oc')
#获取子序列中间的一段
print(my_tuple[2 : 5])
print(my_tuple[-5 : -2])
print(my_tuple[3 : -1])
#指定step
print(my_tuple[2 : -1 : 2])
print(my_tuple[2 : -1 : 3])
——序列加法
. 列表和元组支持加法运算,加法的和就是把两个“列表或元组”所包含的元素的总和。
. 列表只能和列表相加;元组只能和元组相加;元组不能直接和列表相加。
例如:
# coding: utf-8
####################################
# 文件名称:add.py
# 功能描述:列表与元组的计算
# 编写日期:2020-04-17
# 编写人员:
####################################
list1 = [20 , 'python']
list2 = list(range(4))
# 加法就是把两个列表的元素拼接在一起
print(list1 + list2)
tuple1 = (20 , 'python')
tuple2 = tuple(range(4))
# 加法就是把两个元组的元素拼接在一起
print(tuple1 + tuple2)
# 如果确实需要把列表和元组相加
# 则可以使用list()和tuple()进行转换
print(list1 + list(tuple2))
print(tuple(list1) + tuple2)
——序列乘法
. 列表和元组可以和整数执行乘法,列表和元组乘法的意义就是把它们包含的元素重复N次——N就是被乘的倍数。
. 可以列表、元组同时进行加法、乘法运算。
. 示例:日期翻译程序
例如:
# coding: utf-8
####################################
# 文件名称:multiple.py
# 功能描述:列表与元组的计算
# 编写日期:2020-04-17
# 编写人员:
####################################
list1 = ['python' , 29 , -2]
# 序列只能与整数相乘,就是把元素重复N次
print(list1 * 3)
#字符串也属于序列,因此字符串也支持与int相乘
s = 'fkjava'
print(s * 5)
tuple1 = tuple(range(5))
print(tuple1 * 3)
——in运算
. in运算符用于判断列表或元组是否包含某个元素
例如:
# coding: utf-8
####################################
# 文件名称:intest.py
# 功能描述:in的运算
# 编写日期:2020-04-17
# 编写人员:
####################################
list1 = [20 , 'python']
print(20 in list1)
print(30 in list1)
——本节小结
1. 序列的索引
2. 子序列
3. 序列支持的加法、乘法、in运算