zoukankan      html  css  js  c++  java
  • 第六章、基本数据类型(list)

    列表(list):列表是有序的,且可以修改

    说明:列表里面可以存放:数字、字符串、列表、布尔值,可以嵌套任意类型

    列表存放元素的原理:通过链表的方式

    1.创建列表:通过list(列表)类,创建了一个test_list的对象

    test_list=["Tom","Mary","Jim","Disk"]

    2.増加列表元素

    test_list=["Tom","Mary","Jim","Disk"]
    test_list.append("Yu_disk") 默认把"Yu_disk"放到列表最后面的位置
    print(test_list)
    """返回结果
    ['Tom', 'Mary', 'Jim', 'Disk', 'Yu_disk']
    """

    2.1向列表中插入元素

    需求:在Jim的前面插入["Sir","lady"]
    test_list=["Tom","Mary","Jim","Disk"]
    test_list.insert(2,["Sir","lady"])
    print(test_list)
    """返回结果
    ['Tom', 'Mary', ['Sir', 'lady'], 'Jim', 'Disk']
    """

    3.删除列表元素

    3.1 pop删除方法
    test_list=["Tom","Mary","Jim","Disk"]
    test_list.pop(0) 通过位置下标来删除列表元素
    print(test_list)
    """返回结果
    ['Mary', 'Jim', 'Disk']
    """

    3.2 remove删除方法

    test_list=["Tom","Mary","Jim","Disk"]
    test_list.remove("Tom") 通过元素名称来删除列表中元素
    print(test_list)

    """返回结果
    ['Mary', 'Jim', 'Disk']

    """

    3.3 del删除方法 del是全局参数

    test_list = ["Tom", "Mary", "Jim", "Disk"]
    del test_list[1] del也是通过列表的位置下标来指定删除的元素
    print(test_list)
    """返回的结果
    ['Tom', 'Jim', 'Disk']
    """

    3.3 del 切片删除方法 ,切片的结果也是一个列表

    test_list = ["Tom", "Mary", "Jim", "Disk"]
    del test_list[:2]
    print(test_list)

    """返回结果
    ['Jim', 'Disk']
    """

    4.修改列表元素

    test_list=["Tom","Mary","Jim","Disk"]
    test_list[0]="Zhangxiaoyu" 通过位置下标来修改列表元素
    print(test_list)

    """返回结果
    ['Zhangxiaoyu', 'Mary', 'Jim', 'Disk']
    """

    4.2 把列表中"Mary"元素修改成["disk","Yuxianming"]

    test_list=["Tom","Mary","Jim","Disk"]
    test_list[1]=["disk","Yuxianming"]
    print(test_list)
    """返回结果
    ['Tom', ['disk', 'Yuxianming'], 'Jim', 'Disk']
    """

    4.2切片修改列表元素,切片的结果也是一个列表

    test_list=["Tom","Mary","Jim","Disk"]
    test_list[0:2]="diskaprt","ceshi"
    print(test_list)

    """返回结果
    ['diskaprt', 'ceshi', 'Jim', 'Disk']
    """

    5.查找列表元素

    test_list=["Tom","Mary","Jim","Disk"]
    print(test_list[:-1])
    """返回结果1
    ['Tom', 'Mary', 'Jim']
    """

    print(test_list[:3])
    """返回结果2
    ['Tom', 'Mary', 'Jim']
    """
    print(test_list[-2:-1])
    """返回结果3
    ['Jim']
    """

    6.for和while循环

    complex_list =["Tom","Mary",["ceshi",1,["d","c",10,"11"],True],"Jim","Disk"]
    for index,i in enumerate(complex_list):
    print(index,i)

    7. in 操作列表

    test_list=["Tom","Mary","Jim","Disk"]
    v = "yuxianming" in test_list
    print(v)
    """返回结果
    False
    """

    v = "Mary" in test_list
    print(v)

    """返回结果
    True
    """

    complex_list =["Tom","Mary",["ceshi",1,["d","c",10,"11"],True],"Jim","Disk"]
    v = ["ceshi",1,["d","c",10,"11"],True] in complex_list
    print(v)
    """返回结果
    True
    """

    练习

    复杂列表,多层嵌套

    complex_list =["Tom","Mary",["ceshi",1,["d","c",10,"11"],True],"Jim","Disk"]

    for item in complex_list:
    print(item)
    """返回结果
    Tom
    Mary
    ['ceshi', 1, ['d', 'c', 10, '11'], True]
    Jim
    Disk
    """

    需求1:查询complx_list表中的元素"c"

    print(complex_list[2][2][1])
    """返回结果
    c
    """
    需求2:查询complx_list表中的元素"ceshi"和1
    print(complex_list[2][:2])
    """返回结果
    ['ceshi', 1]
    """
    需求3:删除complx_list表中的元素10,"11"
    del complex_list[2][2][2:]
    print(complex_list)
    """返回结果
    ['Tom', 'Mary', ['ceshi', 1, ['d', 'c'], True], 'Jim', 'Disk']
    """

    8.转换

    8.1字符串转换成列表

    str_test="yuxianming_test"
    v1=list(str_test)
    print(v1)
    """返回结果
    ['y', 'u', 'x', 'i', 'a', 'n', 'm', 'i', 'n', 'g', '_', 't', 'e', 's', 't']
    """
    str_test1="1234yuxianming_test"
    v2= list(str_test1)
    print(v2)

    """返回结果
    ['1', '2', '3', '4', 'y', 'u', 'x', 'i', 'a', 'n', 'm', 'i', 'n', 'g', '_', 't', 'e', 's', 't']
    """

    8.2列表转换成字符串,如果列表当中包含数字和字符串只能自已写for循环,如果列表只包含字符串可以用join把列表转换成字符串

    """注意点:for不能循环数字"""

    list_test1=['1', '2', '3', '4', 'y', 'u', 'x', 'i', 'a', 'n', 'm', 'i', 'n', 'g', '_', 't', 'e', 's', 't']
    print(str(list_test1))
    """返回结果:还是列表,转换不成功
    ['1', '2', '3', '4', 'y', 'u', 'x', 'i', 'a', 'n', 'm', 'i', 'n', 'g', '_', 't', 'e', 's', 't']
    """

    for循环列表转换成字符串
    list_test1=['1', '2', '3', '4', 'y', 'u', 'x', 'i', 'a', 'n', 'm', 'i', 'n', 'g', '_', 't', 'e', 's', 't']
    count=""
    for i in list_test1:
    count=count+str(i)
    print(count)
    """返回结果
    1234yuxianming_test
    """

    join把列表转换成字符串

    list_test1=['1', '2', '3', '4', 'y', 'u', 'x', 'i', 'a', 'n', 'm', 'i', 'n', 'g', '_', 't', 'e', 's', 't']
    v1="".join(list_test1)
    print(v1)
    """返回结果
    1234yuxianming_test
    """

    以下是list类中提供的11个方法(灰魔法)

    1.append 追加元素,把追加的值永远放到最后面

    test_list=["Tom","Mary","Jim","Disk"]
    test_list.append(123)
    test_list.append(["yuxianming","xuhongmei"])
    print(test_list)

    """返回的结果
    ['Tom', 'Mary', 'Jim', 'Disk', 123, ['yuxianming', 'xuhongmei']]
    """

    2. clear 清空列表中的元素

    test_list=["Tom","Mary","Jim","Disk"]
    test_list.clear()
    print(test_list)
    """返回的结果
    []
    """

    3. copy 复制列表给新的对象

    test_list=["Tom","Mary","Jim","Disk"]
    test_list1=test_list.copy()
    print(test_list1)
    """返回的结果
    ['Tom', 'Mary', 'Jim', 'Disk']
    """

    4.count 统计列表元素的个数

    test_list=["Tom","Mary","Jim","Disk","Jim"]
    v1 = test_list.count("Jim")
    print(v1)
    """返回的结果
    2
    """

    v2=test_list.count("yuxianming")
    print(v2)
    """返回的结果
    0
    """

    5.index 用于从列表中找出某个值第一个匹配项的索引位置。

    test_list=["Tom","Mary","Jim","Disk","Jim","Tom","Mary","Jim"]
    v1= test_list.index("Jim",3,-1) 从下标3位置开始一直到-1,第1个出现"Jim"的索引位置是4
    print(v1)
    """返回的结果
    4
    """

    6. insert 函数用于将指定对象插入列表的指定位置。

    方法:list.insert(index, obj)

    test_list=["Tom","Mary","Jim","Disk"]
    test_list.insert(1,"中国") 在索引1的前面插入"中国"
    print(test_list)
    """返回的结果
    ['Tom', '中国', 'Mary', 'Jim', 'Disk']
    """

    7.pop 函数用于移除列表中的一个元素(默认最后一个元素),并且返回该元素的值。

    test_list=['Tom', '中国', 'Mary', 'Jim', 'Disk']
    v=test_list.pop(1) 删除索引为1的元素
    print(test_list)
    """返回的结果
    ['Tom', 'Mary', 'Jim', 'Disk']
    """

    print(v) 获取删除的元素
    """返回的结果
    中国
    """


    test_list.pop() 删除列表中最后一个元素
    print(test_list)
    """返回结果
    ['Tom', 'Mary', 'Jim']
    """

    8.remove 函数用于移除列表中某个值的第一个匹配项。

    test_list=["Tom","Mary","Jim","Disk","Jim","Tom","Mary","Jim"]
    test_list.remove("Jim") 删除列表中第一个出现元素为"Jim"的值
    print(test_list)
    """返回的结果
    ['Tom', 'Mary', 'Disk', 'Jim', 'Tom', 'Mary', 'Jim']
    """

    9.reverse 函数用于翻转列表中元素。

    test_list=['Tom', 'Mary', 'Jim', 'Disk']
    print(test_list)
    """返回的结果
    ['Tom', 'Mary', 'Jim', 'Disk']
    """


    test_list.reverse()
    print(test_list)
    """返回的结果
    ['Disk', 'Jim', 'Mary', 'Tom']
    """

    10.extend 扩展原表 此函数内部使用的原理是for循环

    test_list=['Tom', 'Mary', 'Jim', 'Disk']
    test_list.extend(["yuxianming","ceshi"])
    print(test_list)
    """返回的结果
    ['Tom', 'Mary', 'Jim', 'Disk', 'yuxianming', 'ceshi']
    """

    test_list=['Tom', 'Mary', 'Jim', 'Disk']
    test_list.extend("yuxianming")
    print(test_list)

    """返回的结果
    ['Tom', 'Mary', 'Jim', 'Disk', 'y', 'u', 'x', 'i', 'a', 'n', 'm', 'i', 'n', 'g']

    """

    """注意点
    extend 函数是在原表上扩展,而append是追加时是在原表中嵌套列表
    """
    test_list.append(["yuxianming","ceshi"])
    print(test_list)
    """返回的结果
    ['Tom', 'Mary', 'Jim', 'Disk', 'yuxianming', 'ceshi', ['yuxianming', 'ceshi']]
    """

    11. sort排序,默认为升序排列,也可以指定参数降序排列(reverse=True)

    test_list=[11,44,22,33,22]
    test_list.sort()
    print(test_list) 升序排列
    """返回的结果
    [11, 22, 22, 33, 44]
    """
    test_list.sort(reverse=True) 降序排列
    print(test_list)
    """返回的结果
    [44, 33, 22, 22, 11]
    """

    sort还有两个参数先欠着(cmp、key)

  • 相关阅读:
    【转】网页窗口DIV自定义拖动
    【转】js获取当前日期时间“yyyy-MM-dd HH:MM:SS”
    JQuery基本知识、选择器、事件、DOM操作、动画
    LinQ高级查询、组合查询、IQueryable集合类型
    使用LinQ进行增删改查
    【转】html之file标签 --- 图片上传前预览 -- FileReader
    钢城干洗中心智能管理系统
    HTTP状态码
    HTTP报文内的HTTP信息
    HTTP协议中概念
  • 原文地址:https://www.cnblogs.com/yuxianming/p/9388081.html
Copyright © 2011-2022 走看看