• list str dic 内置方法


    1.列表的 append 和extend的区别

    list.append(object) 向列表中添加一个对象object
    list.extend(sequence) 把一个序列seq的内容添加到列表中
    
    
    music_media = ['compact disc', '8-track tape', 'long playing record']
    new_media = ['DVD Audio disc', 'Super Audio CD']
    music_media.append(new_media)
    print music_media
    >>>['compact disc', '8-track tape', 'long playing record', ['DVD Audio disc', 'Super Audio CD']]
    
    使用append的时候,是将new_media看作一个对象,整体打包添加到music_media对象中。
    
    
    music_media = ['compact disc', '8-track tape', 'long playing record']
    new_media = ['DVD Audio disc', 'Super Audio CD']
    music_media.extend(new_media)
    print music_media
    >>>['compact disc', '8-track tape', 'long playing record', 'DVD Audio disc', 'Super Audio CD']
    
    使用extend的时候,是将new_media看作一个序列,将这个序列和music_media序列合并,并放在其后面。
    
    

    2. 字典的排序用法

    d = {'Michael': 95, 'Bob': 75, 'Tracy': 85}
    
    #第一种,按K排序
    print(sorted(d.keys()))  #['Bob', 'Michael', 'Tracy']
    
    #第二种,按V排序
    print(sorted(d.values())) #[75, 85, 95]
    
    #第三种,按值排序,然后按顺序输出
    
    #写法一
    print(sorted(d, key=lambda x: d[x]))  #['Bob', 'Tracy', 'Michael']
    
    #写法二
    def age(x):  #函数名随便定义
        return d[x]  #字典的K返回
    print(sorted(d,key=age))  #['Bob', 'Tracy', 'Michael']
    
    

    3.sort和sorted的区别

    l1=[1,3,2,4,7,5,9]
    
    #第一种情况
    
    l1.sort() #l1.sort(reverse=True) true 为从大到小排列 False 为从小到大排序
    print(l1)  #[1, 2, 3, 4, 5, 7, 9] 
    
    #第二种情况
    
    l2=l1 #把l1赋值给l2
    
    print(id(l1)) #1903199478408
    print(id(l2)) #1903199478408
    
    print(l2)  #此时l2 =[1, 3, 2, 4, 7, 5, 9]
    l1.sort()  #l1进行排序
    print(l1)  #l1为 [1, 2, 3, 4, 5, 7, 9]
    print(l2)  #l2为 [1, 2, 3, 4, 5, 7, 9] 原因是指向的是同一内存地址
    
    #结论 想把L1赋值给L2 并且任意一个列表发生变化不影响另一个
    l2=l1[:]  #写成这样既可  
    print(id(l1)) #1187644465800
    print(id(l2)) #1187644465864
    
    #第三种情况
    l1 = [1, 3, 2, 4, 7, 5, 9]
    l2 = sorted(l1)
    
    print(id(l1)) #1898623820424
    print(id(l2)) #1898623820488
    
    print(l2)  #[1, 2, 3, 4, 5, 7, 9]
    print(l1)  #[1, 3, 2, 4, 7, 5, 9]
    
    #--------------------------------------------------------
    
    sort方法还有两个可选参数:key和reverse
    
    1、key在使用时必须提供一个排序过程总调用的函数:
    
    x = ['mmm', 'mm', 'mm', 'm' ]
    x.sort(key = len)
    print (x) # ['m', 'mm', 'mm', 'mmm']
    
    2、reverse实现降序排序,需要提供一个布尔值:
    
    y = [3, 2, 8 ,0 , 1]
    y.sort(reverse = True)
    print (y) #[8, 3, 2, 1, 0]
    
    True为倒序排列,False为正序排列
    

    4.str和list 互转

    s = 'abcd'
    
    #第一步 将字符串转成列表
    li = list(s) #先强制转换成列表
    print(li)  #['a', 'b', 'c', 'd']
    
    #第二步 将列表再转会字符串
    s1 = ''.join(li)
    print(s1)  #'abcd'
    
    #笨方法 for循环拼接
    s1 = ''
    for i in li:
        s1 += i
    print(s1) #'abcd'
    
    
  • 相关阅读:
    django QQ认证登录
    python mixin到底是什么 django
    Django View类的解析
    [置顶] 十道海量数据处理面试题
    Epoll简介以及例子
    GCC在C语言中内嵌汇编 asm __volatile__
    在FireBug中计算Javascript 运行时间
    Two Sum
    Longest Consecutive Sequence
    Evaluate Reverse Polish Notation
  • 原文地址:https://www.cnblogs.com/bladecheng/p/11260450.html
Copyright © 2020-2023  润新知