zoukankan      html  css  js  c++  java
  • 列表的操作方法

    一、列表

    列表是python中的基础数据类型之一,其他语言中也有类似于列表的数据类型,比如js中叫数组,他是以[]括起来,每个元素以逗号隔开,而且他里面可以存放各种数据类型比如:

    li = [‘alex’,123,Ture,(1,2,3,’wusir’),[1,2,3,’小明’,],{‘name’:’alex’}]

    列表相比于字符串,不仅可以储存不同的数据类型,而且可以储存大量数据,32位python的限制是 536870912 个元素,64位python的限制是 1152921504606846975 个元素。而且列表是有序的,有索引值,可切片,方便取值。

    增:

    1 s = ['alex','wusir','taibai']
    2 # append 追加
    3 s.append('henry')
    4 # insert 插入
    5 s.insert(1,'henry')
    6 # extend 迭代追加
    7 s.extend('henry')
    8 s.extend(['oldboy','girl'])
    View Code

    删:

     1 s = ['alex','wusir','taibai',10,11]
     2 pop 按照索引删除,会将删除的元素作为返回值(默认删除最后一个)
     3 s.pop(1)
     4 remove 按照元素删除
     5 s.remove('wusir')
     6 clear 清空列表
     7 s.clear()
     8 del
     9 按照索引删除
    10 del s[1]
    11 按照切片删除
    12 del s[1:2]
    13 删除整个列表
    14 del s
    View Code

    改:

    1 s = ['alex','wusir','taibai',10,11]
    2 切片改
    3 s[:1] = 'asdf'
    4 切片加步长改 必须一一对应
    5 s[::2] = ['a','b','c']
    View Code

    查:

    1 按照索引 按照切片 加步长查询
    2 for 循环查询
    3 s = ['alex','wusir','taibai',10,11]print(s)
    View Code

    列表的其他操作:

    1 获取列表的长度              len()
    2 计算某个元素出现的次数   conut
    3 通过元素查找索引,找到第一个就返回,找不到就报错
    4 从小到大排序sort(reverse = False) 当reverse = True时从大到小
    5 反转用                        reverse
    6 查找某个元素的索引用    index  找到第一个就返回,找不到报错
    View Code

    作业:

    1.请⽤代码实现:   li = ["alex", "wusir", "taibai"] 利⽤下划线将列表的每⼀个元素拼接成字符串"alex_wusir_taibai"
     
    2.利⽤for循环和range打印出下⾯列表的索引。
     
    li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]
     
    3.利⽤for循环和range找出100以内所有的偶数并将这些偶数插⼊到⼀个新列表中。
     
    4.利⽤for循环和range 找出50以内能被3整除的数,并将这些数插⼊到⼀个新列表中。
     
    5.利⽤for循环和range从100~1,倒序打印。
     
    6.利⽤for循环和range从100~10,倒序将所有的偶数添加到⼀个新列表中,然后对列 表的元素进⾏筛选,将能被4整除的数留下来。
     
    7.利⽤for循环和range,将1-30的数字⼀次添加到⼀个列表中,并循环这个列表,将 能被3整除的数改成*8.查找列表li中的元素,移除每个元素的空格,并找出以"A"或者"a"开头,并以"c"结尾 的所有元素,并添加到⼀个新列表中,后循环打印这个新列表。 li = ["TaiBai ", "alexC", "AbC ", "egon", " riTiAn", "WuSir", "  aqc"]
     
    9.开发敏感词语过滤程序,提示⽤户输⼊评论内容,如果⽤户输⼊的内容中包含特殊的 字符: 敏感词列表 li = ["苍⽼师", "东京热", "武藤兰", "波多野结⾐"] 则将⽤户输⼊的内容中的敏感词汇替换成等⻓度的*(苍⽼师就替换***),并添加到⼀ 个列表中;如果⽤户输⼊的内容没有敏感词汇,则直接添加到上述的列表中。

    答案:

    第一题
    li = ["alex", "wusir", "taibai"]
    up = '_'.join(li)
    print(up)
    第二题
    li = ["alex", "WuSir", "ritian", "barry", "wenzhou"]
    for i in range(len(li)):
        print(i,li[i])
    第三题
    lis1 = []
    for i in range(2,100,2):
        # print(i)
        lis1.append(i)
    print(lis1)
    第四题
    lis2 = []
    for i in range(50):
        if i % 3 == 0:
            lis2.append(i)
    print(lis2)
    第五题
    for i in range(100,0,-1):
        print(i)
    第六题
    lis3 = []
    for i in range(100,11,-1):
        if i % 2 == 0:
            lis3.append(i)
        for v in lis3:
            if v % 4 != 0:
                lis3.remove(v)
    print(lis3)
    第七题
    lis4 = []
    for i in range(1,31):
        lis4.append(i)
    for v in lis4:
        if v % 3 == 0:
            lis4[v-1] = '*'
    print(lis4)
    第八题
    lis = []
    li = ["TaiBai ", "alexC", "AbC ", "egon", " riTiAn", "WuSir", "  aqc"]
    for i in li:
        i = i.strip()
        if i.startswith('A') and i.endswith('c'):
            lis.append(i)
        elif i.startswith('a') and i.endswith('c'):
            lis.append(i)
    for v in lis:
        print(v)
    第九题
    li = ['苍老师','武藤兰','波多野结衣','东京热']
    flag = []
    comment = input('请输入')
    for name in li:
        if name in comment:
            comment = comment.replace(name,len(name)*'*')
    flag.append(comment)
    print(flag)

    重点:

     1 """
     2 利⽤f or循环和range从100~10,倒序将所有的偶数添加到⼀个新列表中,然后对列
     3 表的元素进⾏筛选,将能被4整除的数留下来。
     4 """
     5 
     6 lst = []
     7 for x in range(100,9,-1):
     8     if x % 2 == 0:
     9         lst.append(x)
    10 # 使用del完成
    11 # 从前往后遍历列表,如果删除列表中的元素,会有漏删元素的风险。
    12 # 解决方案:从后往前遍历
    13 index = len(lst) - 1
    14 while index >= 0:
    15     if lst[index] % 4 != 0:
    16         del lst[index]
    17     index -= 1
    18 print(lst)
    View Code
  • 相关阅读:
    java 项目自我总结-01 开发环境的搭建
    sql server 导入c#dll
    java 开发自我总结- idea 如何打包spring boot
    如何快速创建多工作页 excel
    运维知识总结
    .net core
    ubuntu安装网易云音乐
    Java中(==)与equals的区别
    Linux压缩打包命令
    文件目录属性
  • 原文地址:https://www.cnblogs.com/NumerOne/p/11452024.html
Copyright © 2011-2022 走看看