python_0基础开始_day04
程序员文章站
2022-06-23 23:33:35
第四节 一、列表 list 数据类型之一,存储大量的,不同类型的数据 列表中只要用逗号隔开的就是一个元素 有序可变的。 数据类型之一,存储大量的,不同类型的数据 列表中只要用逗号隔开的就是一个元素 有序可变的。 1.1列表的索引 列表和字符串一样也拥有索引,但是列表可以修改: 列表和字符串一样也拥有 ......
一、列表 list
-
数据类型之一,存储大量的,不同类型的数据
-
列表中只要用逗号隔开的就是一个元素
-
有序可变的。
-
列表和字符串一样也拥有索引,但是列表可以修改:
lst = ['张三','李四','赵五','陈六']
print(lst[0]) # 列表中第一个元素
print(lst[1]) # 列表中第二个元素
print(lst[2]) # 列表中第三个元素
1.2列表的切片
-
切片的用法和步长和字符串一样。顾头不顾尾。
lst = ["章", "菲", "绣", "花", "鲁迅"]
print(lst[0:3]) # ['章', '菲', '绣']
print(lst[:3]) # ['章', '菲', '绣']
print(lst[1::2]) # ['菲', '花'] 也有步长
print(lst[2::-1]) # ['绣', '菲', '章'] 也可以倒着取
print(lst[-1:-3:-2]) # 倒着带步长
练习:
li = [1, 3, 2, "a", 4, "b", 5,"c"]
通过对li列表的切片形成新的列表l1,l1 = [1,3,2]
通过对li列表的切片形成新的列表l2,l2 = ["a",4,"b"]
通过对li列表的切片形成新的列表l3,l3 = ["1,2,4,5]
通过对li列表的切片形成新的列表l4,l4 = [3,"a","b"]
通过对li列表的切片形成新的列表l5,l5 = ["c"]
通过对li列表的切片形成新的列表l6,l6 = ["b","a",3]
1.3列表的增删改查
-
增
-
注意:list和str是不一样的. lst可以发生改变. 所以直接就在原来的对象上进行了操作
追加模式
-
append() —— 追加,在列表的末尾进行添加
lst = ["章", "菲", "绣", "花", "鲁迅"]
print(lst) # ["章", "菲", "绣", "花", "鲁迅"]
lst.append("吃鸡")
print(lst) # ["章", "菲", "绣", "花", "鲁迅","吃鸡"]-
insert(索引,插入内容) —— 插入
lst = ["章", "菲", "绣", "花", "鲁迅"]
lst.insert(1, "许褚") # 在1的位置插入许褚. 原来的元素向后移动一位
print(lst) # ["章", "许褚","菲", "绣", "花", "鲁迅"]-
extend() —— 迭代添加
# 迭代添加
lst = ["金志文", "张一山", "苦海无涯"]
lst.extend(["麻花藤", "麻花不疼"])
print(lst) # ["金志文", "张一山", "苦海无涯","麻花藤", "麻花不疼"] -
-
删
-
pop —— 删除
lst = ["章", "菲", "绣", "花", "鲁迅"]
print(repr(lst.pop(2))) # repr()查看当前数据的原生态
print(lst) #["章", "菲", "花", "鲁迅"]-
clear() —— 清空
lst = ["章", "菲", "绣", "花", "鲁迅"]
print(lst) # ["章", "菲", "绣", "花", "鲁迅"]
lst.clear()
print(lst) # [s]-
del list —— 通过索引,切片,步长删除
lst = ["章", "菲", "绣", "花", "鲁迅"]
del lst[3] # ["章", "菲", "绣", "鲁迅"]
del lst[1:4]# ["章","鲁迅"]
del lst[1::2] # ['章', '绣', '鲁迅'] -
-
改
-
通过索引修改
lst = ["章", "菲", "绣", "花", "鲁迅"]
lst[1] = "小野猪"
print(lst) # ["章", "小野猪", "绣", "花", "鲁迅"] -
通过切片进行修改,默认步长为1,修改的内容必须是可迭代的对象,修改的内容可多可少
lst = ["章", "菲", "绣", "花", "鲁迅"]
lst[1:3] = "小野猪" # 默认步长为1
print(lst) # ['章', '小', '野', '猪', '花', '鲁迅']
lst[1:5:2] = "小芳","青青草原" # 步长不为1的时候,必须一一对应
print(lst) # ['章', '小芳', '绣', '青青草原', '鲁迅']
-
-
查
-
for循环
lst = ["章", "菲", "绣", "花", "鲁迅"]
for i in lst:
print(i) -
索引
-
1.4列表的嵌套
-
一层一层的查找,[...]视为一个元素
lst1 = ["国际章", "阿娇", ['汪峰', "国际章", "小苹果", "小姨"],
["蔡徐坤", ["篮球", "姚明", "林书豪"], ["唱", "邓丽君", "蔡国庆", "腾格尔"],
["跳", "蔡依林", "罗志祥", "赵四", "社会摇"],
["cnb", "alex", "rimo"]]]
print(lst[-3][-1]) # 腾格尔
二、元组
python数据类型之一。tuple:有序,不可变;只支持查询,不支持增删改。
(元组就是一个不可变的列表)
-
统计 —— count():统计某个元素出现的次数
tu = (1,2,3,4,5,1,2,1)
print(tu.count(1)) # 3 统计元素在元组中出现的次数 -
获取索引 —— index():通过元素查询索引
tu = (1,2,3,4,5,1,2,1)
print(tu.index(2)) # 1 通过元素查询索引 -
用途:就是将一些非常重要的不可让人改动的数据放在元祖中,只供查看。
-
元组的嵌套
tu = (1,2,3,4,(5,6,7,8,("alex","wusir",[1,23,4])))
print(tu[4][4][0]) # alex
三、range
range —— 范围
print(range(1,10)) # python3中打印range是自己range自己本身 print range(1,10) # python2中打印range获取的是一个列表,列表的元素是1-9
range(1,10) # [起始位置:终止位置] 顾头不顾尾 range(1,10,2) # [起始位置:终止位置:步长] 默认为 1 range(10) # 10代表的是终止位置,起始位置默认为0 range是一个可迭代对象
range的诞生是为了解决不能循环数字 for i in range(2,10,2): print(i) # 2 4 6 8 for i in range(0,100,2): print(i) # 0到100(不包含)以内的所有偶数 for i in range(1,100,2): print(i) # 1到100(不包含)以内的所有奇数 for i in range(100): print(i) # 0~99所有的数 for i in range(100,-1,-1): print(i) # 100~0 for i in range(100,-11,-1): print(i) # 100~-10
上一篇: #leetcode刷题之路50-Pow(x, n)
下一篇: 简单搭建一个SpringBoot