列表,元组,字典作为特殊的数据类型在python编程中经常用到,对于这三种数据类型的使用方法和注意事项进行区分避免出现bug。

1.列表

列表list 用[ ] 表示,列表是可以存放任何数据,包括整型,浮点型,字符串,布尔型等等,是常用的数据类型之一。列表相当于一个百宝箱可以存放任何数据,不用区分数据类型。

列表分为普通列表,混合列表和空列表

普通列表
list_syy = [1, 2, 3, 4]
表示一个整形列表
list_syy = ["syy", "hello word"]
表示一个字符串列表
list_syy = [1<2, True]
表示一个布尔列表
list_syy = [1,2,3,4,"syy","hello word",1<2,True]
表示一个混合列表
list_syy = []
表示一个空列表

注意:布尔列表中True首字母大写才表示布尔类型,同理False首字母大写才表示布尔类型否则会报错

对于列表通常有增加,删除,修改和切片以及翻转,排序,拼接等操作详细举例如下

(1).从列表中获取数据就是数据的索引,通过下标来索引,下标是从0 开始的,

语法:

变量[下标]

获取混合列表list_syy中的syy字符串
list_syy = [1,2,3,4,"syy","hello word",1<2,true]
首先syy在列表中从0开始数第4个位置上
print(list_syy[4])

如果想把列表中的所有元素都获取一遍用循环语句

    for i in list_syy:
        print(i, end=" ")

(2). 从列表中添加元素,添加一个元素和多个元素的语法

函数语法举例说明
append变量.函数list. append(对象)向列表添加对象并加到末尾,只能添加一个元素
extend变量.函数list.extend(可迭代对象)将可迭代对象中的数据分别添加到列表末尾,可以同时添加多个元素
insert变量.函数list.insert(下标,对象)向指定下标位置添加对象
举例:
list_syy = [1, 2, 3, 4, "syy", "hello word", 1 < 2, True]

使用append函数时的两个注意事项
list_syy.append(6,7) #使用append添加两个元素使会报错
print(list_syy)

报错内容
list_syy.append(6,7)
TypeError: append() takes exactly one argument (2 given)
如果改成如下方式
list_syy.append([6,7])
则会输出
[1, 2, 3, 4, 'syy', 'hello word', True, True, [6, 7]]

如果使用extend函数
list_syy.extend([6,7])
则会输出
[1, 2, 3, 4, 'syy', 'hello word', True, True, 6, 7]

insert函数的使用举例

list_syy.insert(6,7)
输出
[1, 2, 3, 4, 'syy', 'hello word', 7, True, True]

(3).从列表中删除一个或多个元素

函数语法举例说明
clear()list.函数list.clear()清空列表,全部清空,括号里不能有数字否则报错
pop()list.函数list.pop(下标)删除下标指定的元素,如果不加下标则删除最后一个元素
remove(对象)list.函数list.remove(对象)删除指定的对象,就是具体的元素
del函数 listdel list[对象]删除变量或指定下标的值
举例
list_syy = [1, 2, 3, 4, "syy", "hello word", 1 < 2, True]
list_syy.clear()
print(list_syy)
输出为
E:/code/image_opencv_test/test.py
[]
注意:clear函数不能删除特定的元素,只能删除整个列表,伤害性极大,谨慎使用

    list_syy = [1, 2, 3, 4, "syy", "hello word", 1 < 2, True]
    list_syy.pop(1)
    print(list_syy)
输出为
[1, 3, 4, 'syy', 'hello word', True, True]
表示删除列表中第一个元素,其他元素保留
    list_syy = [1, 2, 3, 4, "syy", "hello word", 1 < 2, True]
    list_syy.pop()
    print(list_syy)
输出为
[1, 2, 3, 4, 'syy', 'hello word', True]
删除了列表最后一个元素

    list_syy = [1, 2, 3, 4, "syy", "hello word", 1 < 2, True]
    list_syy.remove("syy")
    print(list_syy)
输出为
[1, 2, 3, 4, 'hello word', True, True]

    list_syy = [1, 2, 3, 4, "syy", "hello word", 1 < 2, True]
    list_syy.remove(2)
    print(list_syy)
输出为
[1, 3, 4, 'syy', 'hello word', True, True]
注意与pop函数的用法区别,remove是删除具体的元素,pop是删除通过下标索引到的元素

    list_syy = [1, 2, 3, 4, "syy", "hello word", 1 < 2, True]
    del list_syy[1]
    print(list_syy)
输出为
[1, 3, 4, 'syy', 'hello word', True, True]
注意下标用[]而不是()与pop注意区分

总结:del函数和clear 函数破坏力极大一般不常用,编程中常用的remove函数和pop函数,掌握一个就够用了

(4).修改元素

语法    变量[下标]=新值

    list_syy = [1, 2, 3, 4, "syy", "hello word", 1 < 2, True]
    list_syy[1]=8
    print(list_syy)
输出为
[1, 8, 3, 4, 'syy', 'hello word', True, True]

(5)列表的切片操作

切片就是把一个列表切分为多个列表,类似于视频切片,想要哪段取哪段

语法    变量[起始下标:结束下标] #结束下标取不到

注意事项

①如果下标从0开始可以省略不写,例如 n = l[:4]

②如果结束下标取的是最后一个元素,可以省略不写,例如 n = l[3:]

③如果列表中的元素都要,开始和结束下标都可以省略,例如 n = l[:]

④n = l[:-1] 表示从0开始 - 倒数第二个元素(倒数从1开始数)

切片注意事项举例
    list_syy = [1, 2, 3, 4, "syy", "hello word", 1 < 2, True]
    n = list_syy[:5]   #表示取0~4共五个下标
    print(n)
输出为
[1, 2, 3, 4, 'syy']

    list_syy = [1, 2, 3, 4, "syy", "hello word", 1 < 2, True]
    n = list_syy[5:]    #表示取从第五个下标开始的内容
    print(n)
输出为
['hello word', True, True]

    list_syy = [1, 2, 3, 4, "syy", "hello word", 1 < 2, True]
    n = list_syy[:]
    print(n)
输出为
[1, 2, 3, 4, 'syy', 'hello word', True, True]


    list_syy = [1, 2, 3, 4, "syy", "hello word", 1 < 2, True]
    n = list_syy[:-3]
    print(n)
输出为
[1, 2, 3, 4, 'syy']

重点注意:结束的下标是取前一个位置的,因为列表中的下标是从0开始数的,我们是按照从1开始数的,我们数到的5,对于下标来说是4

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐