美文网首页
day6 list列表及其操作

day6 list列表及其操作

作者: _最美不是下雨天_ | 来源:发表于2018-12-29 15:34 被阅读0次

    1.什么是列表(list)

    列表是Python提供的容器型数据类型
    可变-列表中的每个元素的值可变,列表的长度可变,列表中元素的顺序可变
    有序-每个元素可以通过下标来确定位置
    2.列表的字面量:通过[]括起来,里面有多个元素,每个元素用逗号隔开
    []---空列表
    **注意:列表里面的数据可以是任何Python支持的数据类型;并且同一个列表中不同元素的类型可以不一样

    list1=[1,2.3,'abc',True,[1,2,3],{'a':10},lambda x:2*x]

    2.获取列表元素(和字符串获取字符的语法一样)

    a.获取单个元素
    列表[下标]-获取列表中指定下标对应的元素
    b.获取部分元素(切片) --结果是列表
    列表[开始下标:结束下标:步长]
    注意:取不到结果的时候,结果是空列表
    c.遍历
    1.可以使用for循环,直接遍历列表,拿到列表每个元素;(操作元素的时候和下标无关)
    for item in moves:
    print(item)
    2.通过遍历列表元素对应的下标来遍历列表元素(操作元素的时候和下标有关)
    for index in range(len(moves)):
    print('下标',index)
    print(moves[index])

    moves =['毒液','功夫熊猫','肖申克的救赎','这个杀手不太冷','拯救大兵瑞恩']
    练习:统计一个班的学生成绩,存在一个列表中。求整个班的平均成绩

    grade=[]
    sum=0
    while True:
        ingrade = input('请输入学生成绩,end结束:')
        if ingrade=='end':
            break
        else:
            grade.append(ingrade)
    for i in range(len(grade)):
        sum=sum+int(grade[i])
    print(sum/len(grade))
    

    3.增(添加列表元素)

    a.append()
    列表.append(元素) --在指定的列表的最后添加指定的元素
    b.insert
    列表.insert(下标,元素)-在指定的下标前插入指定的元素

    4.删(删除元素)

    a.del
    del 列表[下标] -删除列表中指定下标对应的元素
    注意:del是Python的关键字,可以用它删除任何东西,这的下标不能越界
    b.remove
    列表.remove(元素 -删除列表中第一个指定元素)
    注意:被删除的元素在列表中必须是存在的
    c.pop
    列表.pop() -将列表中最后一个元素从列表中取出
    列表.pop(下标) -将列表中指定标对应的元素从列表中取出
    坑一:遍历列表删除部分元素,删不全! ---遍历的时候对原列表切片

    age=[]
    age2=[]
    sum=0
    while True:
        inage = input('请输入学生成绩,end结束:')
        if inage=='end':
            break
        else:
            age.append(int(inage))
    
    for i in age[:]:
        if i<18:
            age.remove(i)
    print(age)
    

    坑二、通过下标遍历列表,删除元素的时候,下标越界和元素获取不全
    ————解决办法:下标对应的元素需要删除,下标值不动;不会删除下标加1

    age=[]
    age2=[]
    sum=0
    while True:
        inage = input('请输入学生成绩,end结束:')
        if inage=='end':
            break
        else:
            age.append(int(inage))
    index=0
    while index <len(age):
        age3=age[index]
        if age3<18:
            del_item=age.pop(index)
            age2.append(del_item)
        else:
            index+=1
    print(age,age2)
    

    5.修改(修改元素的值)

    列表[下标]=新值 ---修改列表中指定下标对应的值

    练习:有一个列表中保存的是学生成绩,要求将列表中成绩小于60的改成下一个班见,并统计个数

    scores=[90,78,50,77,23,82,45]
    count=0
    for index1 in range(0,len(scores)):
        if scores[index1]<60:
            scores[index1]='下个班见'
            count+=1
    print(count,scores)
    

    6.list相关运算

    1.相关运算:
    a.数学运算+,*
    列表1+列表2 -将两个列表中的元素合并在一起产生一个新的列表
    列表*N -列表中的元素重复N次,产生一个新的列表
    b.支持比较运算
    比较大小的原理和字符串类似
    2.in/not in
    元素 in 列表 --判断列表中是否存在指定的元素
    注意:必须是元素
    3.len
    len(列表) -获取列表中元素的个数
    4,list
    list(数据) -将其他数据类型转换成列表;只有序列才可以转换成列表,并且所有的序列都能转换为列表
    转换的时候就是将序列中所有的元素转换成列表的元素
    注意:不能用Python给我们提供的类型的名字来命名,否则会有隐患
    5.序列其他方法
    max(序列) -获取序列中值最大的元素
    min(序列) -获取序列中值最小的元素
    sum(序列)-求序列中所有元素的和

    注意:以上三个方法,要求序列中的元素类型必须一致,并且这个类型支持比较运算和加法运算

    相关文章

      网友评论

          本文标题:day6 list列表及其操作

          本文链接:https://www.haomeiwen.com/subject/xjfplqtx.html