zoukankan      html  css  js  c++  java
  • python全栈学习--day4

    列表

    说明:列表是python中的基础数据类型之一,它是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如:
     
    1
    li = [‘alex’,123,Ture,(1,2,3,’wusir’),[1,2,3,’小明’,],{‘name’:’alex’}] 
    列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据。列表是有序的,有索引值,可切片,方便取值。
     索引,切片,步长
    li = ['xiao',123,True,(1,2,3,'wusir'),[1,2,3,'小明',],{'name':'xiao'}]
    print(li[0])
    print(li[2])
    print(li[1:4])
    print(li[:5:2])
    #倒着取,后2个
    print(li[-1:-3:-1])
    

    元祖

    =====上述学习内容后续待完成=====

    =====学习作业练习=====

    li = [‘alex’,’wusir’,’eric’,’rain’,‘alex’]
    1. 计算列表的长度并输出

    print(len(li))

    2.列表中追加元素’seven’,并输出添加后的列表

    li = ['alex','wusir','eric','rain','alex']
    li.append('seven')
    print(li)

    3.请在列表的第1个位置插入元素’Tony’,并输出添加后的列表

    li.insert(0,'Tony')
    print(li)

    4.请修改列表第2个位置的元素为’Kelly’,并输出修改后的列表

    li[1] = 'Kelly'
    print(li)
    

    5.请将列表l2=[1,’a’,3,4,’heart’]的每一个元素添加到列表li中,一行代码实现,不允许循环添加。

    l2 = [1,'a',3,4,'heart']

    6.请将字符串s = ‘qwert’的每一个元素添加到列表li中,一行代码实现,不允许循环添加。

    #使用迭代添加
    l2 = [1,'a',3,4,'heart']
    #方法一:
    li.append([1,'a',3,4,'heart'])
    #方法二:
    l3 = li.copy() + l2
    print(l3)
    #方法三:
    li.extend(l2)
    print(li)
    

    7.请删除列表中的元素’eric’,并输出添加后的列表

    s = 'qwert'
    li.extend(s)
    print(li)

    8.请删除列表中的第2个元素,并输出删除的元素和删除元素后的列表

    li.pop(2)
    print(li)

    9.请删除列表中的第2至4个元素,并输出删除元素后的列表

    p = li.pop(1)
    print(p,"
    ",li)

    10.请将列表所有得元素反转,并输出反转后的列表

    del li[1:4]
    print(li)
    

    11.请计算出‘alex’元素在列表li中出现的次数,并输出该次数。

    li.reverse()
    print(li)  
    
    二, 写代码,有如下列表,利用切片实现每一个功能
    li = [1,3,2,'a',4,'b',5,'c']

      1.通过对li列表的切片形成新的列表l1,l1 = [1,3,2]

    l1 = li[0:3]
    print(l1)

      2.通过对li列表的切片形成新的列表l2,l2 = [’a’,4,’b’]

    l2 = li[3:6]
    print(l2)

      3.通过对li列表的切片形成新的列表l3,l3 = [’1,2,4,5]

    l3 = li[::2]
    print(l3)

      4.通过对li列表的切片形成新的列表l4,l4 = [3,’a’,’b’]

    l4 = li[1:6:2]       #1 起始位置,6为结束元素位置,2是步数
    print(l4)
    

      5.通过对li列表的切片形成新的列表l5,l5 = [‘c’]

    l5 = li[-1]
    print(l5)

      6. 通过对li列表的切片形成新的列表l6,l6 = [‘b’,’a’,3]

    li = [1,3,2,'a',4,'b',5,'c']
    l6 = li[-3:-8:-2]
    print(l6)


    三,写代码,有如下列表,按照要求实现每一个功能。
    lis = [2,3,‘k’,[‘qwe’,20,[‘k1’,[‘tt’,3,’1’]],89],’ab’,’adv’]
      1.将列表lis中的’tt’变成大写(用两种方式)。

    a = lis[3][2][1][0] #(临时草稿)
    
    lis[3][2][1][0] = 'TT'   ###一个个元素位置去拆分取值并替换
    lis[3][2][1][0] = lis[3][2][1][0].upper()
    print(lis)
    

      2.将列表中的数字3变成字符串’100’(用两种方式)。

    lis = [2,3,'k',['qwe',20,['k1',['tt',3,1]],89],'ab','adv']
    lis[1]='100'
    # print(lis)
    #a = lis[3][2][1][1]
    lis[3][2][1][1] ='100'
    print(lis)

      3.将列表中的字符串’1’变成数字101(用两种方式)。

    lis = [2,3,'k',['qwe',20,['k1',['tt',3,1]],89],'ab','adv']
    #a = lis[3][2][1][2]
    lis[3][2][1][2] = '101'
    print(lis)
    

     方法二:

    lis[3][2][1][2] = int(lis[3][2][1][2]) + 100
    print(lis)
    四,请用代码实现:
    # 利用下划线将列表的每一个元素拼接成字符串"alex_eric_rain"
    li = ['alex','eric','rain']
    s = '_'.join(li)
    print(s)

    五,查找列表li中的元素,移除每个元素的空格,并找出以’A’或者’a’开头,并以’c’结尾的所有元素,并添加到一个新列表中,最后循环打印这个新列表。

    li = ['taibai',' alexC',' AbC','  egon','   Ritian','  Wusir','  aqc',' ahjhc','auwenfc']
    s1 = []
    # s = ['A','a']
    #
    for i in li:
        #print(i.strip())
        s = i.strip()
        #print(s)
        if s.startswith('A') or s.startswith('a'):
            #print(i.strip())
            #print(s.strip())
            if s.endswith('c'):
                s1.append(s.strip())
    for j in s1:
         print(j)
    
    
     
  • 相关阅读:
    AGC030 简要题解
    CF1601 简要题解
    CSP2021 题解
    2021.11.1-2021.11.7总结
    超快速梅森旋转SFMT(SIMD-oriented Fast Mersenne Twister)一览
    2021.10.25-2021.10.31总结
    CSP 2021 游记
    在Windows vs2015环境下编译使用Libevent
    在Windows环境下实现一个简单的libevent服务器
    Thinking in C++ 课后习题自己实现 第二章
  • 原文地址:https://www.cnblogs.com/haowen980/p/8618419.html
Copyright © 2011-2022 走看看