zoukankan      html  css  js  c++  java
  • 有关深浅COPY练习

    #ID的练习
    #1看代码写结果
    v1 = [1,2,3,4,5]
    v2 = [v1,v1,v1]
    v1.append(6)
    print(v1)
    print(v2)
    #2
    v1 = [1,2,3,4,5]
    v2 = [v1,v1,v1]
    v2[1][0] = 111
    v2[2][0] = 222
    print(v1)
    print(v2)
    #3
    v1 = [1,2,3,4,5,6,7,8,9]
    v2 = {}
    for item in v1:
        if item < 6:
            continue
        if 'k1' in v2:
            v2['k1'].append(item)
        else:
            v2['k1'] = [item ]
    print(v2)
    #4
    import copy
    v1 = 'alex'
    v2 = copy.copy(v1)
    v3 = copy.deepcopy(v1)
    print(v1 is v2)
    print(v1 is v3)
    #5
    import copy
    v1 = [1,2,3,4,5]
    v2 = copy.copy(v1)
    v3 = copy.deepcopy(v1)
    print(v1 is v2)
    print(v1 is v3)
    #6
    import copy
    v1 = [1,2,3,4,5]
    v2 = copy.copy(v1)
    v3 = copy.deepcopy(v1)
    print(v1[0] is v2[0])
    print(v1[0] is v3[0])
    print(v2[0] is v3[0])
    #7
    import copy
    v1 = [1,2,3,4,[11,22]]
    v2 = copy.copy(v1)
    v3 = copy.deepcopy(v1)
    print(v1[-1] is v2[-1])
    print(v1[-1] is v3[-1])
    print(v2[-1] is v3[-1])
    #8
    v1 = [1,2,3,{'name':'hema','numbers':[7,77,88]},4,5]
    v2 = copy.copy(v1)
    print(v1 is v2)
    print(v1[0] is v2[0])
    print(v1[3] is v2[3])
    print(v1[3]['name'] is v2[3]['name'])
    print(v1[3]['numbers'] is v2[3]['numbers'])
    print(v1[3]['numbers'][1] is v2[3]['numbers'][1])
    #9
    v1 = [1,2,3,{'name':'hema','numbers':[7,77,88]},4,5]
    v2 = copy.deepcopy(v1)
    print(v1 is v2)
    print(v1[0] is v2[0])
    print(v1[3] is v2[3])
    print(v1[3]['name'] is v2[3]['name'])
    print(v1[3]['numbers'] is v2[3]['numbers'])
    print(v1[3]['numbers'][1] is v2[3]['numbers'][1])
    #12从小到大从大到小翻转排序
    l1 = [1,3,6,7,9,8,5,4,2]
    print(l1.sort())
    print(l1)
    print(l1.sort(reverse=True))
    print(l1)
    print(l1.reverse)
    print(l1)
    #13代码构建[[' ', ' ', ' '], [' ', ' ', ' '], [' ', ' ', ' ']]
    l1 = []
    for i in range(3):
        l1.append([])
        for j in range(3):
            l1[i].append(' ')
    print(l1)
    #14看代码写结果
    l1 = [1,2,]
    l1 += [3,4]
    print(l1)
    #15看代码写结果
    dic = dict.fromkeys('abc',[])
    dic['a'].append(666)
    dic['b'].append(111)
    print(dic)
  • 相关阅读:
    Java的赋值、浅克隆和深度克隆的区别
    String 字符串中含有 Unicode 编码时,转为UTF-8
    http 请求类
    springboot情操陶冶-jmx解析
    springboot情操陶冶-@Conditional和@AutoConfigureAfter注解解析
    springboot情操陶冶-@SpringBootApplication注解解析
    springboot情操陶冶-@Configuration注解解析
    springboot情操陶冶-SpringApplication(二)
    springboot情操陶冶-SpringApplication(一)
    springboot情操陶冶-初识springboot
  • 原文地址:https://www.cnblogs.com/hemage/p/12580608.html
Copyright © 2011-2022 走看看