美文网首页
python中集合的表述方式

python中集合的表述方式

作者: 竹子bupt | 来源:发表于2020-01-08 16:26 被阅读0次

    解决集合出现下划线“function can call be replace with set literal”的问题

    集合的三种创建方式:


    >>> def f():

           return set([1, 2, 3])

    >>> def h():

           return set((1, 2, 3))

    >>> def g():  #set Literals

           return {1, 2, 3}

    >>> f()

    set([1, 2, 3])

    >>> h()

    set([1, 2, 3])

    >>> g()

    set([1, 2, 3])

    效率对比:

    >>> import timeit

    >>> min(timeit.repeat(f))

    0.675529956817627

    >>> min(timeit.repeat(h))

    0.5531120300292969

    >>> min(timeit.repeat(g))

    0.35515809059143066        #最快

    尽管这里生成set()的方式对性能的提升很小,set literals不用花费时间调用函数处理中间数据,并且这种写法是非常漂亮的,所以建议用set literals的方式

    a=set(["1","2","3"])可以用a={"1","2","3"}代替,这样算法的时间更短,不用调用set()函数,虽然这种表达和字典形式冲突,但机器会根据输入的形式判断是字典还是集合。但是如果是空字典和空集合,则必须用set加以区分。如空字典dic={}  空集合s=set()

    相关文章

      网友评论

          本文标题:python中集合的表述方式

          本文链接:https://www.haomeiwen.com/subject/buesactx.html