Python数据容器可以分为五类:
列表(list)
元祖(tuple)
字符串(str)
集合(set)
字典(dict)
一、列表
1.列表的定义
list = [元素1,元素2...]
2.列表中的元素类型没有限制,可以不同,也可以嵌套
比如:my_list = ["test",666,True]
3.列表的下标索引
(1)正序取索引
(2)倒叙取索引
4.列表中的方法(增删改查)
具体代码示例如下:
python
my_list = ["tangbb", "kanyy"]
# 查询 语法:list.index(元素)
item = my_list.index("tangbb")
print(item)
# 修改 修改特定位置的元素值 语法:list[下标] = 值
my_list[0] = "tangyc"
print(my_list[0])
# 插入 在指定位置插入元素 语法:list.insert(下标,元素)
my_list.insert(1, "tangyc")
print(my_list)
# 追加 将元素追加到列表尾部 语法:list.appent(元素)
my_list.append("kyy")
print(my_list)
# 批量追加 语法:list.extend(其他数据容器)
my_list_2 = ["kyy", "tbb"]
my_list.extend(my_list_2)
print(my_list)
#删除 语法:1. del list[下标] 2. list.pop(下标) 3. list.remove(元素) 【此方法如果有多个元素从前往后值删除第一个查到元素】
my_list = ["tangbb", "kanyy","kyy","kyy"]
del my_list[0]
print(my_list)
my_list.pop(0)
print(my_list)
my_list.remove("kyy")
print(my_list)
# 清空 语法:list.clear()
my_list.clear()
print(my_list)
# 统计元素在列表中的数据 语法:list.count(元素)
my_list = ["tangbb", "kanyy","kyy","kyy"]
num = my_list.count("kyy")
print(num)
# 统计列表中的元素个数 语法:len(列表)
my_list_length = len(my_list)
print(my_list_length)
5.列表的遍历
(1)while循环
(2)for循环
二、元祖
1.元祖
元祖的大部分特性都与列表类似,但是元祖一旦被定义 内容不可变 ,有个特例,如果元祖中嵌套了list,list的元素时可以改的。
python
"""
元祖一旦被定义 内容不可变
但是,如果元祖中嵌套了list,list的元素时可以改的
"""
# 元祖的定义
my_tuple = ("tangbb", 111, True)
my_tuple2 = ()
my_tuple3 = tuple()
# 查询 指定位置元素
item = my_tuple[0]
print(item)
# 查询 指定元素位置
index = my_tuple.index("tangbb")
print(index)
# 查询 指定元素数量
count = my_tuple.count("tangbb")
print(count)
# 查询 元素元素个数
length = len(my_tuple)
print(length)
# 元祖的遍历 while
index = 0
while index < len(my_tuple):
print(f"元祖中元素有:{my_tuple[index]}")
index += 1
# 元祖的遍历 for
for item in my_tuple:
print(f"元祖中元素有:{item}")
三、字符串
1.定义
字符串本质是存放字符的数据容器
python
"""
字符串是存放字符的数据容器
"""
my_str = "tangbingbing love kanyangyang"
# 通过下标索引取值
val1 = my_str[0]
val2 = my_str[1]
print(f"字符串中元素{val1},{val2}")
# index方法 返回指定字符的下标
val3 = my_str.index("k")
print(val3)
# replace方法
new_str = my_str.replace("e", "o")
print(new_str)
# split 方法
new_str_1 = my_str.split("love")
print(new_str_1)
# 输出结果 ['tangbingbing ', ' kanyangyang']
# strip 方法 (不传参数会把头尾空格去除,传参数会剔除头尾包含参数的元素,比如传"12" 会剔除头尾的1,2字符)
test_str = " 12test21 "
test_str_12 = "12test21"
test_str_1 = test_str.strip()
test_str_2 = test_str_12.strip("12")
print(test_str_1)
print(test_str_2)
# 输出结果:
# 12test21
# test
# 统计字符串中某字符出现的次数
count = my_str.count("y")
print(count)
# 统计字符串的长度
length = len(my_str)
print(length)
序列
1.序列的概念:
序列是指:内容连续、有序,可使用下标索引的一类数据容器。
列表、元祖、字符串,均可以看作序列。
2.序列的常用操作-切片
(1) 切片定义:
从一个序列中取出一个子序列。此操作不会影响序列本身,它会得到一个新序列。
(2)语法:(起始下标、结束下标都可以为空,默认表示从头和结尾)
序列[起始下标:结束下标:步长]
python
# 对list进行切片 从1开始4结束步长1
my_list = [1, 2, 3, 4, 5]
new_list = my_list[1:4:1]
print(new_list)
# 输出:[2, 3, 4]
# 对tuple进行切片 从头开始,到最后结束,步长1
my_tuple = (1, 2, 3, 4, 5, 6)
new_tuple = my_tuple[::1]
print(new_tuple)
# 输出:(1, 2, 3, 4, 5, 6)
# 对str进行切片 从头开始,到最后结束,步长2
my_str = "always online"
new_str = my_str[::2]
print(new_str)
# 输出:awy nie