• 列表的增删改查


    列表的用法和字符串不一样,不要搞混了!

    思维导图:

     这里要纠错,sort默认参数是sort(reverse=False),这里是正序排序,如果把reverse=True,那么就得到的是反序。

    例:

    l = [2,3,6,1,7,8]
    l.sort()
    print(l) #得到的打印结果是:[1, 2, 3, 6, 7, 8]

    l1 = l.sort(reverse=True)
    print(l) #得到的结果是:[8, 7, 6, 3, 2, 1]

    列表的增删改查:

    # [1,2,'c','dfas',True]
    #索引和切片。
    # li = [1,2,3,'af','re',4,'45']
    # print(l[0])
    # print(l[3])
    # print(l[-1])
    #切片:
    # print(li[0:3])
    # print(li[2:5])
    # print(li[0:5:2])
    # print(li[-2::-2])
    # print(li[5:0:-2])
    #苑昊
    # li = ['taibai','alex','wusir']
    #1增加 append 在最后增加一个元素
    # print(li.append('yuanhao'))
    # li.append([1,2,3,'www'])
    # print(li)
    # while True:
    #     username = input('请输入员工姓名:')
    #     if username.lower() == 'q':break
    #     li.append(username)
    #     print(li)
    #insert 插入
    # li = ['taibai','alex','wusir']
    # li.insert(1,'日天')
    # print(li)
    #extend 迭代的添加
    # li.extend('q')
    # li.extend('asdt')
    # li.extend([1,2,3,'www'])
    # print(li)
    li = ['taibai','alex','wusir','egon','hulu','jingnvshen']
    #删除 pop 按照索引去删除,有返回值
    name = li.pop(1)
    # print(li)
    # print(name)
    #remove 按照元素去删除
    # li.remove('alex')
    # print(li)
    #clear 清空列表
    # li.clear()
    # print(li)
    #del
    # li = ['taibai','alex','wusir','egon','hulu','jingnvshen']
    # del li[2:4]
    # print(li)
    # del li[0:4:2]
    # print(li)
    li = ['taibai','alex','wusir','egon','hulu','jingnvshen']
    #改 切片先删除,迭代着添加
    # li[0] = '男神'
    # print(li)
    # li[0:3] = '都是男人'
    # print(li)
    li[:] = '都是男人'
    print(li)
    # li[0:2] = ['asd']
    # print(li)
    # li[0:2] = ['asd','fdsa',123]
    # print(li)
    #
    # print(li[1:4])
    # for i in li:
    #     print(i)
    # li = ['taibai','taibai','wusir','egon','taibai','jingnvshen']
    # del li
    # print(li)
    View Code

    列表的其他方法:

    一行代码实现删除列表中重复的值:

    from collections import OrderedDict 用我们collection模块中的有序字典来实现,
    x=OrderedDict.fromkeys(['a','b','c','a','b','c','c'])
    """
    这里是fromkeys的源码
    def fromkeys(cls, iterable, value=None):
    '''OD.fromkeys(S[, v]) -> New ordered dictionary with keys from S.
    If not specified, the value defaults to None.

    '''
    self = cls()
    for key in iterable:
    self[key] = value
    return self

    """
    for i in x: print(i)
     1 列表的嵌套:
     2 li = [1,2,5,'taibai','yuanhao',[1,'alex',3,],True]
     3 '''
     4 # print(li[3])
     5 # print(li[3][3])
     6 # s = li[4].capitalize()
     7 # li[4] = s
     8 #li[4] = li[4].capitalize()
     9 # li[4] = 'Yuanhao'
    10 # print(li)
    11 # s2 = li[4].replace('hao','日天')
    12 # li[4] = s2
    13 # li[4] = li[4][0:4] + 'ritian'
    14 # print(li)
    15 # l2 = li[5]
    16 # li[5][0] = '文杰'
    17 # print(li)
    18 '''
    19 li[5][1] = li[5][1].upper()
    20 print(li)
    21 
    22 
    23 
    24 # li = [1,2,3,1,'a',1,'4']
    25 #count 计数
    26 # print(li.count('fasd'))
    27 li = [2,3,1,5,6,8,9,7,4,10]
    28 #sort 正序排序
    29 # li.sort()
    30 # print(li)
    31 #li.sort(reverse=True) 倒叙排序
    32 # reverse 反转
    33 # li.reverse()
    34 # print(li)
    View Code

    元祖:

    元祖是可哈西不可变的数据类型

     1 #1,元祖tupe()
     2 # t = (1,2,3,'adsf',True,[12,3,'苑昊','taibai'],('fdsa',2,3))
     3 # print(t[4])
     4 # print(t[1:4])
     5 # for i in t:
     6 #     print(i)
     7 # t[4] = False 儿子不能更改
     8 # print(t)
     9 # t[5][2] = '苑日天'
    10 # print(t)
    View Code

    range:

     1 #range范围,相当于可迭代对象
     2 # for i in range(1,10):
     3 #     print(i)
     4 # for i in range(1,10,2):  # 步长
     5 #     print(i)
     6 # for i in range(10,1,-2):  # 步长
     7 #     print(i)
     8 li = [1,2,'a',4,[1,2,'太白','alex'],2]
     9 #range,len
    10 # for i in range(0,len(li)):
    11 #     if i == 4:  # type(li[i]) == list
    12 #         for j in li[i]:  # [1,2,'太白','alex']
    13 #             print(j)
    14 #     else:print(li[i])
    15 
    16 print(li.index('a',3,6))
    17 # for i in li:
    18 #     print(i)
    View Code

  • 相关阅读:
    60个Redis面试题
    Linux服务器安全加固
    Linux安全加固手册
    mysql赋权限
    cut命令的使用实例
    超详细的Tomcat性能监控及调优教程
    Linux面试题(系统管理类——Raid)
    https://www.cnblogs.com/diantong/p/10745372.html
    CentOS6启动流程(含详细流程图)
    Oracle ROWNUM用法和分页查询总结
  • 原文地址:https://www.cnblogs.com/2012-dream/p/7787628.html
Copyright © 2020-2023  润新知