zoukankan      html  css  js  c++  java
  • day 07 数据类型,集合,深浅copy

    1.day 06 内容回顾

     1 小数据池
     2 int :-5-256
     3 str:特殊字符 ,*20
     4 
     5 ascii:8位  1字节  表示一个字符
     6 unicode:32位 4个字节 , 表示一个字符
     7 字节表示8位表示一个字节,字符表示组成的最小元素
     8 utf-8 1个英文字母 8位  1个字节
     9       欧洲  16位  两个字节  表示一个字符
    10       亚洲   24位  三个字节  表示一个字符
    11 
    12 
    13 gbk   1个英文字母 8位,1个字节
    14          亚洲  16 位 两个字节表示一个字符
    15 
    16 s = 'alex'
    17 b = s.encode('utf-8')
    18 print(b)#b.alex

    2.数据类型汇总

     1 '''
     2 str  int
     3 '''
     4 # str
     5 # s = 'hah '
     6 # print(s.isspace())#isspace至少有一个空格就是True,没有就是False
     7 #int
     8 
     9 '''
    10 list:
    11 '''
    12 # lis = [11,22,33,44,55]
    13 # for i in range(len(lis)):
    14 #     print(i)
    15 #     print(lis)
    16 #     del lis[i]
    17 
    18 #dic = {'k1':'v1','k2':'v2','a3':'v3'}
    19 dic1={}
    20 # for i in dic:
    21 #     if 'k' not in i:
    22 #         dic1.setdefault(i,dic[i])
    23 # dic=dic1
    24 # print(dic)
    25 
    26 # l = []
    27 # for i in dic:
    28 #     if 'k' in i:
    29 #         l.append(i)
    30 # for i in l :
    31 #     del dic[i]
    32 # print(dic)
    33 
    34 
    35 #转换成bool值
    36 #0 '' [] () set()
    37 
    38 #元祖  如果元祖里面只有一个元素且不加,那此元素是什么类型,就是什么类型
    39 tu1 = ([1])
    40 tu2 = ([1],)
    41 print(tu1,type(tu1))
    42 print(tu2,type(tu2))

    3.集合的操作

     1 '''
     2 集合:可变的数据类型,他里面的元素必须是不可变的数据类型,无需,不重复
     3       {}
     4 '''
     5 # #set1 = set({1,2,3})
     6 # set2 = {1,2,3.[2,3],{'name':'alex'}}#报错
     7 # #print(set1)
     8 # print(set2)
     9 
    10 #增:add
    11 set1 = {'alex','wusir','ritian','egon','barry',}
    12 # set1.add('女神')
    13 # print(set1)
    14 #update无需添加
    15 # set1.update('abc')
    16 # print(set1)
    17 #
    18 # set1.pop()#随机删除
    19 # print(set1.pop())#有返回值
    20 # print(set1)
    21 # #remove按元素删除
    22 # set1.remove('alex')
    23 # print(set1)
    24 
    25 #清空
    26 # set1.clear()
    27 # print(set1)
    28 
    29 #
    30 # for i in set1:
    31 #     print(i)
    32 
    33 
    34 #求交集
    35 # set1 = {1,2,3,4,5}
    36 # set2 = {4,5,6,7,8}
    37 # set3 = set1 & set2
    38 # print(set3)  # {4, 5}
    39 # print(set1.intersection(set2))  # {4, 5}
    40 
    41 #求并集
    42 # set1 = {1,2,3,4,5}
    43 # set2 = {4,5,6,7,8}
    44 # print(set1 | set2)  # {1, 2, 3, 4, 5, 6, 7,8}
    45 # print(set2.union(set1))  # {1, 2, 3, 4, 5, 6, 7}
    46 
    47 #求反交集
    48 # set1 = {1,2,3,4,5}
    49 # set2 = {4,5,6,7,8}
    50 # print(set1 ^ set2)  # {1, 2, 3, 6, 7, 8}
    51 # print(set1.symmetric_difference(set2))  # {1, 2, 3, 6, 7, 8}
    52 
    53 
    54 #set1独有的
    55 # set1 = {1,2,3,4,5}
    56 # set2 = {4,5,6,7,8}
    57 # print(set1 - set2)  # {1, 2, 3}
    58 # #set1独有的
    59 # print(set1.difference(set2))  # {1, 2, 3}
    60 
    61 # set1 = {1,2,3,}
    62 # set2 = {1,2,3,4,5,6}
    63 # #子集
    64 # print(set1 < set2)
    65 # print(set1.issubset(set2))  # 这两个相同,都是说明set1是set2子集。
    66 # #超集
    67 # print(set2 > set1)
    68 # print(set2.issuperset(set1))  # 这两个相同,都是说明set2是set1超集。
    69 
    70 #去重
    71 # li = [1,2,33,33,2,1,4,5,6,6]
    72 # set1 = set(li)
    73 # # print(set1)
    74 # li = list(set1)
    75 # print(li)
    76 
    77 
    78 # s1 = {1,2,3}
    79 # print(s1,type(s1))
    80 
    81 # s = frozenset('barry')
    82 # print(s,type(s))
    83 # for i in s:
    84 #     print(i)

    4.深浅copy

     1 #赋值没有创建新对象,多个变量共享一个对象’
     2 #浅拷贝,会创建对象,新的对象中里面的内存不会被拷贝‘
     3 #深拷贝,创建一个一模一样的完全新的对象,这个对象延伸出来的内容也会跟着复制一份
     4 # 赋值运算
     5 # l1 = [1,2,3]
     6 # l2 = l1
     7 # l1.append('a')
     8 # print(l1,l2)
     9 
    10 
    11 #copy
    12 # l1 = [1,2,3]
    13 # l2 = l1.copy()
    14 # print(l1,l2)
    15 # print(id(l1),id(l2))
    16 # l2.append('a')
    17 # print(l1,l2)
    18 
    19 # l1 = [1,2,[4,5,6],3]
    20 # l2 = l1.copy()
    21 #
    22 # print(l1,id(l1))
    23 # print(l2,id(l2))
    24 # l1.append('a')
    25 # print(l1,l2)
    26 # l1[2].append('a')
    27 # print(l1,l2)
    28 # print(id(l1[2]))
    29 # print(id(l2[2]))
    30 
    31 # import copy
    32 # l1 = [1,2,[4,5,6],3]
    33 # l2 = copy.deepcopy(l1)
    34 # print(l1,id(l1))
    35 # print(l2,id(l2))
    36 # l1[2].append('a')
    37 # print(l1,l2)
    38 #
    39 # l1 = [1,[1],2,3,4]
    40 # l2 = l1[:]
    41 # l1[1].append('a')
    42 # # l2 的结果是什么?
    43 # print(l1,id(l1))
    44 # print(l2,id(l2))
    45 # print(l1[1] is l2[1])
    46 
    47 # li = ['alex','taibai','wusir','egon']
    48 # for i in li:
    49 #     print(li.index(i),i)
    50 #
    51 # for index,i in enumerate(li,1):
    52 #     print(index,i)
  • 相关阅读:
    Git的安装与配置
    JDBCTemplate
    消费金融大数据风控架构
    架构设计之道
    面向服务架构SOA
    java集合List解析
    web应用安全
    微服务的交互模式
    服务化管理和治理框架的技术选型
    分库分表就能无限扩容么?
  • 原文地址:https://www.cnblogs.com/gcs888/p/10765033.html
Copyright © 2011-2022 走看看