• python3:序列_列表(常用基础知识)


    详情如下:

    #序列结构主要有:列表,元组,集合,字典,字符串
    
    #序列:索引从0开始,从最后起则索引为-1
    a = [1,8,3,9,5,6]
    b = ['小一','小二','小三']
    c = ['Wang','baby','maya','Jiang','an']
    
    print(a[2],a[-1],a[-3]) #输出第几项
    
    #切片
    print(a[::2])   # 默认从0到最后,每两个输出一个
    print(a[1:4:2]) # 从第一个到第四个,每两个
    print(a[:])     # 全部
    
    print(a+b)      #序列相加
    print(a*3)      #序列乘
    
    #检查序列成员
    print('小三' in b)  #in 在,not in 不在,结果为true
    #序列长度、最大值、最小值;%d数字替代符,n换行符
    print("序列长度:%d
    序列最大值:%d
    序列最小值:%d" %(len(a),max(a),min(a)))
    
    print(list(a))    #序列转为列表
    print(str(a))     #序列转为字符串
    print(sum(a))     #序列元素+
    print(sorted(a))  #序列排序,a内原本顺序不会变
    print(list(reversed(a))) #反向元素
    #序列索引和元素组合
    print(list(enumerate(a)))
    for i,element in enumerate(a):
        print(i,element)
    
    
    # -------------------列表-------------------------
    
    #遍历列表
    print('遍历列表')
    for item in a:
        print(item)
    
    #将a分两列输出
    print('将a分两列输出')
    for index,item in enumerate(a):
        if index%2 ==0:
            print(item,'		',end='')  #	:横向空出一个制表符的位置;end='':接下来输出的内容不要换行显示,即:index 0不换行,1换行,2不换行,3换行
        else:
            print(item, '
    ')
    
    # 列表增加元素a.append()
    a.append('测试增加1项元素')
    print(a)
    #修改列表中的元素
    a[0] = '测试元素修改'
    print(a)
    # 列表删除元素(根据索引删除
    del a[-1]
    print(a)
    # 列表删除元素(根据元素值删除)a.remove()
    a.remove(8)
    print(a)
    
    # 列表指定索引位置插入元素 a.insert()
    b.insert(1,'测试插入')  #结果:['小一', '测试插入', '小二', '小三']
    print(b)
    
    #将一个列表中的所有元素都添加到另一个列表 a.extend()
    a.extend(b)  #即a= a+b
    print(a)
    
    #统计元素的数量a.count()
    print(a.count(9))  #结果1
    print(a.index(9))  #结果3,9首次出现的索引号
    
    #列表的排序
    print('c:',c)
    print('sorted(c):',sorted(c))  #序列排序,c内原本顺序不会变,这个结果等于c.sort()
    print('c:',c)
    print('sorted(c,key=str.lower,reverse=True):',sorted(c,key=str.lower,reverse=True))  #key=str.lower:不区分大小写,默认区分大小写;reverse=True:降序,reverse=False:升序,默认升序
    print('c:',c)
    c.sort()   #c被改变了
    print('c.sort()后:',c)
    c.sort(key=str.lower,reverse=True)   #c被改变了(不区分大小写,降序)
    print('c.sort(key=str.lower,reverse=True)后:',c) 
    #列表推导式
    #生成指定范围的数值列表
    import random
    d = [random.randint(11,20)*2 for i in  range(10)] #random.randint(30,90)*2:元素表达式,i:针对后面range的循环变量
    print(d)
    #生成指定需求的列表,如d的5折
    e = [int(x*0.5) for x in d] #x*0.5:元素表达式;x:d中的元素
    print(e)
    #生成符合条件的列表,如f列表需要0.5的d元素,且0.5d元素依然为偶数
    f = [int(x*0.5) for x in d if int(x*0.5)%2==0] #x*0.5:元素表达式;x:d中的元素
    print(f)
    
    
    #二维列表
    #使用推导式创建二维列表
    g = [[random.randint(3,8) for j in range(3) ] for i in range(4)]
    print(g)                #结果:
    print(g[1][2])  #单个元素
    
    #横版输出古诗,纵版输出古诗
    str1 = "千山鸟飞绝"
    str2 = "万径人踪灭"
    str3 = "孤舟蓑笠翁"
    str4 = "独钓寒江雪"
    list1 = [list(str1),list(str2),list(str3),list(str4)]
    
    print('------------横向古诗-方法1------------')
    for itemh in list1:                 #每个子列表存在于列表中
        for item in itemh:              #每个字存在于子列表中
            if itemh.index(item) ==4:   #子列表中最后一个字换行打印,其余不换行打印
                print(item)
            else:
                print(item,end='')
    
    
    print('------------横向古诗-方法2------------')
    for i in range(4):                 #每个子列表存在于列表中
        for j in range(5):              #每个字存在于子列表中
            if j==4:   #子列表中最后一个字换行打印,其余不换行打印
                print(list1[i][j])
            else:
                print(list1[i][j],end='')
    
    
    
    
    print('------------纵向古诗-方法2------------')
    list1.reverse()   #倒叙古诗句子
    
    for i in range(5):
        for j in range(4):
            if j ==3:
                print(list1[j][i])
            else:
                print(list1[j][i],end='')
    
    
    #加:列表的pop和remove的区别
    list3 = ['Google', 'Runoob', 'Taobao']
    list_pop=list3.pop(1)          #pop:根据索引删除,还可以返回删除的元素
    print ("删除的项为 :", list_pop)
    print ("列表现在为 : ", list3)
    
    list4 = ['Google1', 'Runoob2', 'Taobao3']
    list4.remove('Runoob2')                 #remove:根据元素删除,不可以返回删除的元素值
    print ("列4表现在为 : ", list4)
  • 相关阅读:
    努力
    散步
    相信自己
    我仅有的倔强
    存储过程 有用
    面试题整理 !=!=未看 *****面试题整理最全 有用
    项目介绍4 y有用
    面试题;40个多线程的问题 背1 有用
    面试题: redis面试题 有用 redis详细
    数据库相关内容 已看1 有用
  • 原文地址:https://www.cnblogs.com/jxba/p/9862804.html
Copyright © 2020-2023  润新知