温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

容器数据类型特性总结18

发布时间:2020-07-12 22:35:36 来源:网络 阅读:578 作者:zkhylt 栏目:开发技术

一,容器、类型、对象

    1.列表元素和字典自变量可以多行输入,没有任何元素时是不可以的;

        例如:   

In [75]: l1 = [1,
   ....: 2,
   ....: 3,
   ....: ]

In [76]: print l1
[1, 2, 3]

    2.所以对象都有引用计数

        分配新名称会增加计数,删除对象引用则会减少计数;

        例如:   

In [78]: name = "black"

In [79]: import sys
sys        sysconfig  syslog     

In [79]: import sys

In [80]: sys.  
sys.api_version            sys.exit                   sys.last_traceback         sys.ps2
sys.argv                   sys.exitfunc               sys.last_type              sys.ps3
sys.builtin_module_names   sys.flags                  sys.last_value             sys.py3kwarning
sys.byteorder              sys.float_info             sys.long_info              sys.setcheckinterval
sys.call_tracing           sys.float_repr_style       sys.maxint                 sys.setdlopenflags
sys.callstats              sys.getcheckinterval       sys.maxsize                sys.setprofile
sys.copyright              sys.getdefaultencoding     sys.maxunicode             sys.setrecursionlimit
sys.displayhook            sys.getdlopenflags         sys.meta_path              sys.settrace
sys.dont_write_bytecode    sys.getfilesystemencoding  sys.modules                sys.stderr
sys.exc_clear              sys.getprofile             sys.path                   sys.stdin
sys.exc_info               sys.getrecursionlimit      sys.path_hooks             sys.stdout
sys.exc_type               sys.getrefcount            sys.path_importer_cache    sys.subversion
sys.excepthook             sys.getsizeof              sys.platform               sys.version
sys.exec_prefix            sys.gettrace               sys.prefix                 sys.version_info
sys.executable             sys.hexversion             sys.ps1                    sys.warnoptions

In [80]: sys.get
sys.getcheckinterval       sys.getfilesystemencoding  sys.getrefcount            
sys.getdefaultencoding     sys.getprofile             sys.getsizeof              
sys.getdlopenflags         sys.getrecursionlimit      sys.gettrace               

In [80]: sys.getre
sys.getrecursionlimit  sys.getrefcount        

In [80]: sys.getrefcount(name)
Out[80]: 2

In [94]: hello="black"

In [95]: sys.getrefcount(name)
Out[95]: 3

In [96]: del(hello)    //删除对象引用减少计数

In [97]: sys.getrefcount(name)
Out[97]: 2

    3.列表和字典都支持两种类型的复制操作

        浅复制:创建一个新对象,包含的原来的对象引用,指向的是同一个位置;

        深复制:创建一个新对象,递归复制原来包含的所有对象;

            深复制可使用copy模块中的deepcopy()实现。

    4.Python中的所以对象都是“第一类的”

        这意味着使用标识符命名的所有对象都具有相同状态,于是,能够命名所以对象都可以直接当数据进行处理。

        例如:

In [6]: a = 4.0

In [7]: b = 3

In [8]: a / b
Out[8]: 1.3333333333333333

In [9]: a // b
Out[9]: 1.0

    5.所有序列都支持迭代

        序列是索引为非负整数的有序对象的集合;

        序列可以修改,支持原处的插入、替换、删除等操作;

        字串和元组不支持原处修改,但序列和元组能包含任意的Python对象序列(容器的特性);

    6.所有序列都支持的操作

        s[i]

        s[i:j]

        s[i:j:stride]

        len(s)

        max(s)

        min(s)

        sum(s)

        all(s)

        any(s)

        s1 + s2 : 连接

        s1 * N : 重复

        obj in s1 :成员关系判断

        obj not in s

    7.可变序列的操作,操作本身

        s1[index] = value :元素赋值

        s1[i:j] = t :切片赋值

        del s1[index]

        del s1[i:j]

        del s1[i:j:stride]

        

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI