zoukankan      html  css  js  c++  java
  • python day04 列表增删改查

    #列表

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

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

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

    # li = ['alex',[1,2,3],'wusir','egon','女神','taibai']
    # l1 = li[0]
    # print(l1)
    # l2 = li[1]
    # print(l2)
    # l3 = li[0:3]
    # print(l3)
    #增加 append insert
    # li.append('日天')    #增加到最后
    # li.append(1)
    # print(li)
    
    # while 1:
    #     username = input('>>>')
    #     if username.strip().upper() == 'Q':
    #         break
    #     else:
    #         li.append(username)
    # print(li)
    
    # li.insert(4,'春哥')    #按照索引去增加
    # print(li)
    
    # li.extend('二哥')     ##迭代的去增
    # li.extend([1,2,3])
    # print(li)
    #
    li = ['taibai','alex','wusir','egon','女神',]
    # name = li.pop(1)  #按照位置删除有返回值
    # name = li.pop()  # 默认删除最后一个
    # print(name,li)
    
    # li.remove('taibai')  # 按元素去删除
    # print(li)
    
    # li.clear()  # 清空
    # print(li)
    
    # del li
    # del li[0:2]  #按照位置去删除,也可切片删除没有返回值。
    # print(li)
    li = ['taibai','alex','wusir','egon','女神',]
    #
    # li[0] = '男兽'
    # li[0] = [1,2,3]
    #切片
    # li[0:3] = '云姐plfdslkmgdfjglk'
    # li[0:3] = [1,2,3,'春哥','咸鱼哥']
    # print(li)

    #公共方法:

    li = ['taibai','alex','wusir','egon','女神',]
    # l = len(li)
    # print(l)
    
    count(数)(方法统计某个元素在列表中出现的次数)
    # num = li.count('taibai')
    # print(num)
    
    index(方法用于从列表中找出某个值第一个匹配项的索引位置)
    # print(li.index('wusir'))
    
    li = [1,5,4,7,6,2,3]
    # #正向排序
    # # li.sort()
    # # print(li)
    # #反向排序
    # # li.sort(reverse=True)
    # # print(li)
    # #反转
    # li.reverse()
    # print(li)
    #列表的嵌套
    li = ['taibai','武藤兰','苑昊',['alex','egon',89],23]
    
    # print(li[1][1])
    # name = li[0].capitalize()
    # # print(name)
    # li[0] = name
    # li[0] = li[0].capitalize()
    # li[2] = '苑日天'
    # print(li[2].replace('昊','ritian'))
    # li[2] = li[2].replace('昊','ritian')
    # li[3][0] = li[3][0].upper()
    # print(li)

    #元祖

    #元祖 只读列表,可循环查询,可切片。
    #儿子不能改,孙子可能可以改。
    
    # tu = (1,2,3,'alex',[2,3,4,'taibai'],'egon')
    # # print(tu[3])
    # # print(tu[0:4])
    # # for i in tu:
    # #     print(i)
    # tu[4][3]=tu[4][3].upper()
    # print(tu)
    # tu[4].append('sb')
    # print(tu)
    # s = 'alex'
    # s1 = 'sb'.join(s)
    # print(s1)
    #列表转化成字符串  list -----> str    join
    # li = ['taibai','alex','wusir','egon','女神',]
    # s = '++++'.join(li)
    #str ----->list   split()
    # print(s)

    range:指定范围,生成指定数字。

    # for i in range(3,10):     # 步长
    #     print(i)
    # for i in range(10):
    #     print(i)
    # for i in range(0,10,3):
    #     print(i)
    # for i in range(10,0,-2):   # 反向步长
    #     print(i)
    # for i in range(10,-1,-2):
    #     print(i)

    enumerate:枚举,对于一个可迭代的(iterable)/可遍历的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值。

    li = ['alex','银角','女神','egon','太白']
    for i in enumerate(li):
        print(i)
    for index,name in enumerate(li,1):
        print(index,name)
    for index, name in enumerate(li, 100):  # 起始位置默认是0,可更改
        print(index, name)    

    for循环:

    li = [1,2,3,5,'alex',[2,3,4,5,'taibai'],'afds']
    # for i in li:
    #     if type(i) == list:
    #         for k in i:
    #             print(k)
    #     else:print(i)
    
    for i in range(len(li)):
        if type(li[i]) == list:
            for j in li[i]:
                print(j)
        else:print(li[i])

     练习题:

    # 1、查找列表li中的元素,移除每个元素的空格,
    # 并找出以’A’或者’a’开头,并以’c’结尾的所有元素,
    # 并添加到一个新列表中,最后循环打印这个新列表。
    # li = [‘taibai ’,’alexC’,’AbC ’,’egon’,’ Ritian’,’ Wusir’,’  aqc’]
    
    li = ['taibai ','alexC','AbC ','egon',' Ritian',' Wusir','  aqc']
    b=[]
    # for i in li:
    #     s=i.strip()
    #     if (s.startswith("A")or s.startswith("a"))and s.endswith("c"):
    #         b.append(s)
    # for x in b:
    #     print(x)
    
    # for i in li:
    #     s=i.strip()
    #     if s[0].upper() == 'A' and s[-1] == 'c':
    #         b.append(s)
    # for x in b:
    #     print(x)
    
    2、开发敏感词语过滤程序,提示用户输入评论内容,如果用户输入的内容中包含特殊的字符:
    # 敏感词列表 li = ["苍老师","东京热",”武藤兰”,”波多野结衣”]
    # 则将用户输入的内容中的敏感词汇替换成***,并添加到一个列表中;
    # 如果用户输入的内容没有敏感词汇,则直接添加到上述的列表中。
    
    # li=["苍老师","东京热","武藤兰","波多野结衣"]
    # new_li= []
    # info = input("评论")  
    # for i in li:
    #     if i in info:
    #         l = len(i)
    #         info=info.replace(i,'*'*l)
    # new_li.append(info)
    # print(new_li)
  • 相关阅读:
    李航博士:浅谈我对机器学习的理解
    数据挖掘过程中:数据预处理
    C++:构造函数和析构函数能否为虚函数
    PCA的数学原理
    奇异值分解(SVD) --- 几何意义
    3月机器学习在线班第六课笔记--信息熵与最大熵模型
    ML:交叉验证Cross-Validation
    LaTex的注释
    混合高斯模型
    NE2018届校招内推笔试——数据挖掘
  • 原文地址:https://www.cnblogs.com/liujinlei/p/9838175.html
Copyright © 2011-2022 走看看