zoukankan      html  css  js  c++  java
  • 第七天

    今天学了:

      01、第六天的

      1、  is 与 == 的区别()

        is 比较的是内存地址是否相等,而 == 是比较值是否相等

        查看内存地址用id

      2、小数据池

        int类型是-5~256共用一个数据池,    

        str类型无明确说明,但老师说有特殊字符不存在小数据池。

        单个字符*int(20) 以内 有小数据池。

      3、编码

        英文:

            str:表现形式:‘balabala’

              内部编码形式:unicode

            bytes:表现形式 :b'balabala'

                内部编码形式:非Unicode

        中文:

            str:表现形式:'巴拉巴拉'

              内部编码形式:unicode

            bytes:表现形式:b'Xf2X03'这种的

                内部编码形式:非unicode

      02、数据类型的补充:

        (1)isspace      看名字就知道是判定字符串是不是全为空格的

        (2)tuple      对于元组而言,若元组中只有一个元素,则元组类型与此元素相同

                  也就是bool((0))返回False的原因

        (3)list        循环列表的时候不要进行删除操作,若必须,则倒着删

        (4)dic        对字典进行循环的时候,不能进行删除操作,故需要删除的时候可以按循环添加需要删除的元素,

                  然后再进行一次循环进行删除

         dict.fromkeys的用法:用处是迭代添加元素,前者是键,后者是值

         如dic = dict.fromkeys('abc','alex')

         则运行结果为

      03、集合set

         集合里面的数据是可哈希的(即不可变),但集合是不可哈希的,不能作为字典的Key;

          集合中不存在重复的元素,而且是无序的,故不存在索引。

          增:add  加一个元素   update 迭代增加元素

          删:del  彻底删除  pop随机删   clear清空   remove删除元素

          查:for循环

          frozenset()变为不可变的集合  

          集合的作用基本有两种:1、去重

                     2、数据测试关系:&交集  

                              - 差集

                              | 并集  

                              ^反交集  即为并集减去交集

                       判别数据关系时,用   issubset  (是子集)

                                  issuperset   (是超集)

                        # set1 = {1,2,3}
                        # set2 = {1,2,3,4,5,6}
                        # print(set1.issubset(set2))  # 子集
                        # print(set2.issuperset(set1))  # set2 是set1的超集

      04、深浅copy

        不是指向一个,在内存中开辟了一个内存空间,对于浅copy来说,第一层创建的是新的内存地址,
        而从第二层开始,指向的都是同一个内存地址,所以,对于第二层以及更深的层数来说,保持一致性。

        deep.copy
        对于深copy来说,两个是完全独立的,
        改变任意一个的任何元素(无论多少层),另一个绝对不改变.

        个人认为浅copy之所以称为浅,就是指的复制的不够彻底,因为它是随动的;而深copy则复制的比较根深蒂固,不会因此改变

        PS:赋值的问题:

        a = ['a','b','c']

        b = a

        a.append('i')

        输出结果应是a = b = ['a','b','c','i']     

    另外还有解码decode与编码encode,GBK与Utf-8不能实现直接的互相转化,需要用unicode作为中间桥梁

                    

  • 相关阅读:
    Windows 8的语音识别
    硬件驱动程序的知识点滴
    怎么将一张100KB以上大小的电子图片压缩成30KB以内
    Hadoop概念学习系列之Hadoop新手学习指导之入门需知(二十)
    Hadoop概念学习系列之Hadoop、Spark学习路线(很值得推荐)(十八)
    研究生,别再玩了,你玩不起!
    redis源代码解读之内存管理————zmalloc文件
    线段树之入门篇
    C#托付和事件
    dlmalloc 2.8.6 源代码具体解释(6)
  • 原文地址:https://www.cnblogs.com/ylx900/p/8652244.html
Copyright © 2011-2022 走看看