最新公告
  • 欢迎您光临码农资源网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!加入我们
  • Python3的list类型

    基本数据类型是其它语言都必有的数据类型,但 list
    数据类型在其它语言中并不一定是内置的数据类型,比如 c++ 语言,c++ 里面的 list 可以是第三方的 stl 库提供的,
    也可以是程序员自己创造的一种数据类型,但是 Python 解释器内置 list 数据类型。

    list 是 Python 内置的一种数据类型,list 是一种有序的集合,有序集合并不是集合里面的数据是有序的,
    有序集合的意思是可以通过下标访问的集合,有序集合的概念我们在上一小节提到,在此重述一遍。

    list 定义

    因为 python 是动态语言,定义一个 list
    变量不需要显式的定义 list,list定义是用 [] 或者 list([]),我们以后习惯于直接用
    [],因为书写简单易懂,[] 里面的数据是 list 的成员。

    ugly_list = ["ruhua", "xingxing", "konglong"]
    print(ugly_list)

    当然,如果 [] 里面可以不放入数据,也是一个 list,是一个空的 list。注意,空 list 是假值。

    beauty_list = []
    print(beauty_list)
    
    if not beauty_list:
        print("beauty_list 是假值")

    可以通过下标来访问 list 中的成员,索引是从 0 开始的,list 是变量,我们可以通过下标修改 list 成员的值。

    ugly_list = ["ruhua", "xingxing", "konglong"]
    print(ugly_list[0])           # 通过下标访问成员
    
    ugly_list[1] = "zhaoritian"   # 通过下标修改成员
    print(ugly_list)

    操作 list 常用的函数

    上节我们知道 len 函数是 Python 内置的函数,并且可以用于获取字符串长度,同样 len 函数可以获得 list
    的长度。

    ugly_list = ["ruhua", "xingxing", "konglong"]
    print(len(ugly_list))

    可以通过 list 的 index 函数获取成员所在的下标,
    如果指定 start 和 stop 范围,则在指定范围(左闭右开)内查找,
    如果该成员不存在,则 Python 解释器抛出异常。

    ugly_list = ["ruhua", "xingxing", "konglong"]
    print(ugly_list.index("xingxing"))        # 返回下标 1
    print(ugly_list.index("zhaoritian"))      # 抛出异常
    print(ugly_list.index("konglong", 0, 2))  # 抛出异常,因为范围在[0,2)

    我们知道通过下标可以访问和修改成员的值但无法添加值,
    我们可以通过 list 的 insert 函数,插入元素到 list 中的某个位置。

    ugly_list = ["ruhua", "xingxing", "konglong"]
    ugly_list.insert(1, "zhaoritian")
    print(ugly_list)
    运行结果:['ruhua', 'zhaoritian', 'xingxing', 'konglong']

    可以用 list 的 pop 函数,删除所指定的索引的成员,如果索引不存在(越界),则 Python 解释器抛出异常,
    remove 函数可以删除指定的成员,如果该成员不存,则 Python 解释器抛出异常。

    # pop 函数
    ugly_list = ["ruhua", "xingxing", "konglong"]
    ugly_list.pop(1)   # ok
    print(ugly_list)
    运行结果:['ruhua', 'konglong']
    ugly_list.pop(10)  # 抛出异常,因为索引越界
    print(ugly_list)
    运行结果:IndexError: pop index out of range
    
    # remove 函数
    ugly_list = ["ruhua", "xingxing", "konglong"]
    ugly_list.remove("xingxing")    # ok
    print(ugly_list)
    运行结果:['ruhua', 'konglong']
    ugly_list.remove("zhaoritian")  # 抛出异常,因为成员不存在
    print(ugly_list)
    运行结果:ValueError: list.remove(x): x not in list

    list 成员的本质

    list 中的成员可以是任何类型,成员的数据类型也可以不同,
    空 list 用 [] 表示,我们前面讲过 [] 是假值,但是 [] 不是 False 也不是
    None,更不是 0 或 “”,因为数据类型不同。

    mylist = ["Hello", 250, [1, 2, 3]]
    print(mylist)
    otherlist = []
    print(otherlist == False)  # False
    print(not otherlist)       # True

    list 中的成员用逗号隔开,每个成员无论数据类型多么复杂,也只是一个成员。

    mylist = ["Hello", 250, [1, 2, 3]]
    len_mylist = len(mylist)
    print(len_mylist)    # 结果为 3
    
    print(mylist[0])     # "Hello"
    print(mylist[2])     # [1, 2, 3]
    mylist[2][1] = 5     # 正确,[1, 2, 3] 是变量,里面的成员可以修改
    mylist[0][1] = "F"   # 错误,"Hello" 是常量,里面的成员不可修改

    本节重要知识点

    熟练运用操作 list 的函数。

    弄明白 list 数据成员的本质。

    想要了解更多内容,请持续关注码农资源网,一起探索发现编程世界的无限可能!
    本站部分资源来源于网络,仅限用于学习和研究目的,请勿用于其他用途。
    如有侵权请发送邮件至1943759704@qq.com删除

    码农资源网 » Python3的list类型
    • 7会员总数(位)
    • 25846资源总数(个)
    • 0本周发布(个)
    • 0 今日发布(个)
    • 293稳定运行(天)

    提供最优质的资源集合

    立即查看 了解详情