zoukankan      html  css  js  c++  java
  • 列表

    列表介绍

    列表的循环遍历

    列表的常见操作

    列表的嵌套

    变量A的类型为列表

    name = [‘张三’,‘李四’,‘王五’]

    列表的元素可以是不同类型的

    name = [1,'a']

    #打印列表
    name = [‘张三’,‘李四’,‘王五’]
    print(name[0])
    print(name[1])
    print(name[2])

    #运行结果:
    zhangsan
    lisi
    wagwu

    列表的循环遍历

    1.使用for循环

    用循环来完成,可以可更加有效率的输出列表的每一个数据

    namelist = ['zhangsan','lisi','wangwu']
    for name in namelist:
        print(name)

    #运行结果
    zhangsan
    lisi
    wangwu

    2.使用while循环

    namelist = ['zhangsan','lisi','wangwu']
    length = len(namelist)
    i = 0
    while i <length:
        print(namelist[i])
        i+= 1
    
    #运行结果
    zhangsan
    lisi
    wangwu

    列表的相关操作

    列表存放的数据是可以进行修改的,比如:“增”“删”“改”

     1.添加元素(“增”  apppend,extend,insert)

    appent

    通过append可以向列表添加元素

    #定义变量a,默认有三个元素

    a = ['zhangsan','lisi','wangwu']
    print("-------添加之前,列表a的数据--------")
    for tempname in a:
        print(tempname)
    
    #提示、并添加元素
    tpme = input("请输入要添加的学生姓名:")
    a.append(temp)
    
    print("-------添加之后,列表a的数据---------")
    for tempname in a:
        print(tempname)
    
    #运行结果:
    ---------添加之前,列表a的数据------
    zhangsan
    lisi
    wangwu
    请输入要添加的学生姓名:

    extend

    通过extend可以将另一个集合中的元素逐一添加到列表中

    > a=[1,2]
    > b=[3,4]
    >a.append(b)
    >a
    [1,2,[3,4]]
    >a.extend(b)
    >a
    [1,2,[3,4],3,4]

    insert

    作用:insert(index,object)在指定位置index前插入元素object

    >a = [0,1,2]
    >a.insert(1,3)
    >a
    [0,3,1,2]

      2.修改元素(“改”)

    作用:修改元素的时候,要通过下标来确定要修改的是哪个元素,然后才能进行修改

    #定义变量a,默认有三个元素
    a = ['zhangsan','lisi','wangwu']
        print("-----修改之前,列表a的数据-----")
        for tempname in a:
             print(tempname)
    
    #修改元素
    a[1] = 'sunliu'
    print("-------修改之后列表a的数据--------")
    for tempname in a:
        print(tempname)
    
    运行结果:
    -------修改之前,列表a的数据---------
    zhangsan
    lisi
    wangwu
    -------修改之后,列表a的数据---------
    zhangsan
    sunliu
    wangwu

    3.查找元素(“查” in ,not in ,index, count)

    作用:所谓的查找,就是看看指定的元素是否存在

    in , not in

    python中查找的常用方法为:

      *in(存在),如果存在那么结果为true,否则为false

      *not in(不存在),如果不存在那么结果为true,否则 false

    #待查找的列表
    namelist = ['zhangsan','lisi',''wangwu]
    
    #获取用户查找的名字
    findname = input (“请输入要查找的名字:”)
    
    #查找是否存在
    if findname in namelist:
        print(“在字典找到了相同的名字”)
    
    else:
        print(“没有找到”)
    
    #运行结果
    结果1:(找到)
    结果2:(没有找到)

    说明:

    in的方法只要会了,那么not in 也是同样的用法,只不过not in 判断的是不存在

    index, count

    index 和count与字符串中的用法相同

    >a = ['a','b','c','a','b']
    >a.index('a',1,3)  #注意是左闭右开区间
    Traceback(most recent call last):
        File "<stdin>",line 1,in<module>
    ValueEroor: 'a' is not in list
    >a.index('a',1,4)
    3
    >a.count('b')
    2
    >a.count('d')
    0

    4.删除元素(‘删’ del,pop,remove)

    作用:类比显示生活中,如果某位同学调班了,那么应该把这个调班的同学的姓名删除;在开发中会经常用到删除这种功能;

    列表元素的常用删除方法是:

    *del: 根据下标进行删除

    *pop:删除最后一个元素

    *remove:根据元素的值进行删除

    del举例:

    namelist = ['zhangsan', 'lisi' , 'wangwu']
    
    print('-------删除之前--------')
    for tempname in namelist:
        print(tempname)
    
    del namelist[2]
    
    print('-------删除之后--------')
    for tempname in namelist:
        print(tempname)
    
    #运行结果
    -------删除之前---------
    zhangsan
    lisi
    wangwu
    -------删除之后----------
    zhangsan
    lisi

    pop案例:

    namelist = ['zhangsan', 'lisi' , 'wangwu']
    
    print('-------删除之前--------')
    for tempname in namelist:
        print(tempname)
    
    namelist.pop()
    
    print('-------删除之后--------')
    for tempname in namelist:
        print(tempname)

    remove案例:

    namelist = ['zhangsan', 'lisi' , 'wangwu']
    
    print('-------删除之前--------')
    for tempname in namelist:
        print(tempname)
    
    namelist.remove('lisi')
    
    print('-------删除之后--------')
    for tempname in namelist:
        print(tempname)
    
    #运行结果
    -------删除之前---------
    zhangsan
    lisi
    wangwu
    -------删除之后----------
    zhangsan
    wangwu

    5.排序(sort,reverse)

    作用:sort方法是将list按照特定顺序重新排列,默认为由小到大,参数reverse=True可改为倒序,由大到小

    reverse方法是将list逆置

    >a=[1,4,2,3]
    >a
    [1,4,2,3]
    >a.reverse()
    >a
    [3,2,4,1]
    >a.sort()
    >a
    [1,2,3,4]
    >a.sort(reverse=True)
    >a
    [4,3,2,1]

    列表的嵌套

    1.列表嵌套

    作用:类似while循环的嵌套,列表也是支持嵌套的

    一个列表中的元素又是一个列表,那么这就是列表的嵌套

    schoolnames = [
         ['北京大学',‘清华大学’],
         [‘南开大学’,‘天津大学’,‘南京示范大学’],
         ['山东大学',‘中国体育大学’]
    ]

    2.应用

    案例:一个学校,由3个办公室,现在有8为老师等待工位的分配,请编写程序,晚上随机的分配

    #encoding=utf-8
    
    import random
    
    #定义一个列表来保存3个办公室
    offices = [[],[],[]]
    
    #定义一个列表用来存储8位老师的名字
    names = ['a','b','c','d','e','f','g','h']
    
    i = 0
    for name in names:
        index = random.randint(0,2)
        offices[index].append(name)
    
    i = 1
    for tempnames in offices:
        print('办公室%d的人数为:%d' %(i,len(tempnames)))
        i += 1
        for name in tempnames:
            print("%s" %name,end='')
        print("
    ")
        print("-"*20)
    
    #运行结果:
    办公室1的人数为:4
    abcd
    ----------------------
    办公室2的人数为:3
    dgh
    ----------------------
    办公室3的人数为:1
    f
  • 相关阅读:
    设备驱动开发之缓冲区读写操作
    什么是80Plus
    INF Manufacturer Section
    C++编程获得某台机器的IP地址
    INF DestinationDirs Section
    importlib模块
    django的内置信号
    auth模块(登录验证)
    头像文件的预览
    powerDesiger 常用设置
  • 原文地址:https://www.cnblogs.com/FlameLuo/p/9691967.html
Copyright © 2011-2022 走看看