赞
踩
列表通常用来存储多个数据,每一个数据之间用逗号隔开,列表中的数据被称为元素,列表的左右两边带有中括号。
定义列表时初始元素可以为空,也可以定义一个有初始值的列表,列表可以存储不同的数据类型。
# 定义一个空列表
list1 = []
# 定义一个有初始值的列表
list2 = [1, 2, 4, 3]
# 列表可以存储不同的数据类型
list3 = [1, 2, 4, "hello"]
列表可以直接用print函数输出,也可以使用下标获取列表元素的值,也可以通过元素获取元素的下标。len()函数可获取列表长度。
list2 = [1, 2, 4, "hello"]
print(list2)
print(list2[3]) # 通过下表获取元素值
print(list2.index("hello")) # 通过元素或下标
print(len(list2)) # 输出list长度
输出结果为:
(1)新增元素
可以使用append()函数在list末尾加入新的元素;可以使用insert()函数在某个位置插入新的元素,下标从0开始。
list2 = [1, 2, 4, "hello"]
list2.append(5) # 在list末尾加入新的元素5
print(list2) # 输出结果是[1, 2, 4, 'hello', 5]
list2.insert(2, 0.6) # 在第二个和第三个元素中间插入新的元素0.6
print(list2) # 输出结果是[1, 2, 0.6, 4, 'hello', 5]
输出结果是:
(2)删除操作
可以使用remove()函数删除某个元素,有重复元素默认删除第一个;也可以使用__delitem__()函数通过下标删除某个元素;也可以通过del
使用下表删除某个元素。
list2=[1, 2, 0.6, 4, 'hello', 5]
list2.remove("hello") # 删除元素"hello"
print(list2) # 输出结果是[1, 2, 0.6, 4, 5]
list2.__delitem__(1) # 删除元素2
print(list2) # 输出结果是[1, 0.6, 4, 5]
del list2[3] # 删除list最后一个元素
print(list2) # 输出结果是[1, 0.6, 4]
输出结果是:
(3)修改操作
可以通过下标直接修改某个元素。
list2=[1, 0.6, 4]
list2[0] = 9 # 通过下标直接修改
print(list2) # 输出结果是[9, 0.6, 4]
输出结果是:
list相加得到的是一个新的list。
l1 = [3, 45, 6]
l2 = [5, 6]
print(l1 + l2) # 输出结果是[3, 45, 6, 5, 6]
输出结果是:
可以通过切片的方式对列表进行截取、反转等操作。一些切片的特殊操作如下所示。
list[-1]:返回最后一个数据
list[:1]:返回0到1的数据,故返回第一个数据
list[1:]:返回从1到0的数据,故返回第二个到最后一个的数据(不包含结束索引位置0)
list[-1:]:返回从-1到0的数据,故返回最后一个数据
list[:-1]:返回从0到-1的数据,故返回第一个到倒数第二个的数据(不包含结束索引位置-1)
list[::1]:表示步长为1,步长大于0时,返回序列为原顺序
list[::-1]: 表示从右往左以步长为1进行切片,返回序列为倒序
list[::2]: 表示从左往右步长为2进行切片
(1)截取
l3 = [3, 45, 6, 5, 6]
print(l3[1:3]) # 从下标[1,3)开始截取,左闭右开,输出结果是[45, 6]
print(l3[2:]) # 截取下标2到末尾的元素,输出结果是[6, 5, 6]
print(l3[:2]) # 截取list前两个元素,输出结果是[3, 45]
print(l3[-2:]) # 截取list末尾两个元素,输出结果是[5, 6]
输出结果是:
(2)反转
l3 = [3, 45, 6, 5, 6]
print(l3[::-1]) # 输出结果是[6, 5, 6, 45, 3]
# 字符串可以看作是一个特殊的列表
l4 = "abcfgdjskls"
print(l4[1]) # 输出结果是b
print(l4[::-1]) # 输出结果是slksjdgfcba
输出结果为:
可以通过元素值遍历,也可以通过元素下标遍历。
# 成员遍历,只适合读取元素的值
for h in l3:
print(h)
# 下标遍历
for i in range(len(l3)):
print(l3[i])
通过下标遍历,可以改变元素的值
l4 = [3, 4, 6, 5, 9]
for i in range(len(l4)):
l4[i] += 1
print(l4) # 最后输出的是[4, 5, 7, 6, 10]
输出结果:
列表转为tuple或set可直接通过对应函数转化。
l6 = [4, 4, 4, 6, 10, 4, 5, 7, 12]
print(list(l6)) # 依旧是列表
print(tuple(l6)) # 转为元组
print(set(l6)) # 通过set函数可以去重
输出结果为:
list也可以转为字符串,字符串类型的list可以直接通过join方法转换,其他类型需要先转为字符串
l6 = [4, 4, 4, 6, 10, 4, 5, 7, 12]
str6 = "".join(str(l6))
print(str6)
print("str6的类型:", type(str6))
l7 = ["123", "wef", "ok"]
str7 = ",".join(l7)
print(str7)
print("str7的类型:", type(str7))
输出结果为:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。