本文共 2979 字,大约阅读时间需要 9 分钟。
Python 序列(Sequence)是指按特定顺序依次排列的一组数据,它们可以占用一块连续的内存,也可以分散到多块内存中。通过每个值所在位置的编号(称为索引)访问它们。
在序列中,每个元素都有属于自己的编号(索引)。索引值从 0 开始递增。如果使用负值作为索引,则从 -1 开始。
切片操作是访问序列中元素的另一种方法,可以生成一个新的序列。语法格式为:sname[start : end : step],其中:
sname 表示序列名称。start 表示切片的开始索引,默认为 0。end 表示切片的结束索引,默认为序列长度。step 表示步长,默认为 1。示例:
str = "对字符串进行切片操作"print(str[:2]) # 取索引区间为[0,2]之间的字符print(str[::2]) # 隔 1 个字符取一个字符print(str[:]) # 取整个字符串print(str[1:6:2]) # 取索引区间为[1,6]之间的字符,每隔 2 个字符取一个
在 Python 中,使用数字 n 乘以一个序列会生成新的序列,其内容为原序列重复 n 次。示例:
str = "序列相乘"print(str * 3) # 结果:序列相乘序列相乘序列相乘
使用 in 关键字检查某元素是否为序列成员。语法格式为:value in sequence。示例:
str = "检查元素是否包含在序列中"flag = "元素" in strprint(flag) # Trueprint("元素2" in str) # False 列表是 Python 中最强大的序列类型。列表中的元素可以存储任何数据类型,且支持高效的增删改查操作。列表用方括号 [ ] 表示。
创建列表有两种方式:
[ ] 直接创建: emptyList = [] # 空列表list1 = ["Python", 1, 2, ["三", 4, 5], 3.0]
list() 函数创建: list1 = list("hello") # 将字符串转换为列表tuple1 = ('Python', 'Java', 'C++', 'JavaScript')list2 = list(tuple1) # 将元组转换为列表 使用 del 关键字删除列表:
list1 = ["Python", 1, 2, 3]del list1
Python 的垃圾回收机制会自动销毁不再使用的列表。
list1 = ["Python", 1, 2, ["三", 4, 5], 3.0]print(list1[3]) # 输出 ["三", 4, 5]print(list1[-3]) # 输出 3.0
print(list1[1:4]) # 输出 [1, 2, ["三", 4, 5]]print(list1[1:4:2]) # 输出 [1, ["三", 4, 5]]print(list1[-4:-1]) # 输出 [1, 2]
append() 方法: list1.append("新元素") insert() 方法: list1.insert(2, "插入的元素")
extend() 方法: list1.extend([1, 2, 3])
del 语句: list1 = ["Python", 1, 2, 3]del list1[2]
pop() 方法: list1.pop() # 删除最后一个元素list1.pop(2) # 删除指定索引的元素
remove() 方法: list1.remove(1) # 删除元素 1
元组是不可变序列,元素存储在小括号 ( ) 中。元组的元素无法修改,但可以通过拼接生成新的元组。
( ) 创建: tup1 = ("Python", 1, [2, 'a'], ("abc", 3.0)) tuple() 函数创建: tup2 = tuple("hello") # 将字符串转换为元组tup3 = tuple([1, 2, 3]) # 将列表转换为元组 tup1 = ("http://www.baidu.com", 8080)print(tup1[0]) # 输出 "http://www.baidu.com"print(tup1[-1]) # 输出 8080 print(tup1[1:4]) # 输出 (8080,)print(tup1[1:4:2]) # 输出 (8080,)print(tup1[-4:-1]) # 输出 (, )
字典是 Python 中唯一的映射类型,存储键值对。字典是无序的,可变的序列。
{ } 创建: scores = {'数学': 95, '英语': 92, '语文': 84} dict.fromkeys() 方法创建: knowledge = ['语文', '数学', '英语']scores = dict.fromkeys(knowledge, 60) # 默认值为 60
dic = {'two': 0.65, 'one': 88, 'three': 100, 'four': -59}print(dic['one']) # 输出 88 get() 方法访问: print(dic.get('one')) # 输出 88print(dic.get('five', '该键不存在')) # 输出 '该键不存在' 集合是无序且不重复的序列,主要用于存储不可变数据类型。
{ } 创建: set1 = {1, 'c', 1, (1, 2, 3), 'c'} set() 函数创建: set2 = set("www.baidu.comt")set3 = set([1, 2, 3, 4, 5]) set1 = {1, 2, 3}set2 = {3, 4, 5}print(set1 & set2) # 交集:{3}print(set1 | set2) # 并集:{1, 2, 3, 4, 5}print(set1 - set2) # 差集:{1, 2}print(set1 ^ set2) # 对称差集:{1, 2, 4, 5} set1.remove(1) # 删除元素 1set1.discard(1) # 删除元素 1,不会抛出错误
通过以上内容,可以清晰地了解 Python 中序列、列表、元组、字典和集合的基本使用方法及其区别。
转载地址:http://teofk.baihongyu.com/