zoukankan      html  css  js  c++  java
  • pyextend库-unpack列表集合字符串解包函数

    pyextend - python extend lib

    unpack (iterable, count, fill=None)

    参数:

    iterable: 实现 __iter__的可迭代对象, 如 str, tuple, dict, list

    count:    需要拆分的数量, 如数值大于 len(iterable) 则使用 fill 的值进行后续填充

    fill:          默认值填充

    使用范例:

    Example 1:
            In[1]: source = 'abc'
            In[2]: a, b = unpack(source, 2)
            In[3]: print(a, b)
            a b
    
    Example 2:
            In[1]: source = 'abc'
            In[2]: a, b, c, d = unpack(source, 4)
            In[3]: print(a, b, c, d)
            a b None None

    代码:

    @accepts(iterable='__iter__', count=int)
    def unpack(iterable, count, fill=None):
        """
        The iter data unpack function.
    
        """
        iterable = list(enumerate(iterable))
        cnt = count if count <= len(iterable) else len(iterable)
        results = [iterable[i][1] for i in range(cnt)]
    
        # results[len(results):len(results)] = [fill for i in range(count-cnt)]
        results = merge(results, [fill for i in range(count-cnt)])
        return tuple(results)
  • 相关阅读:
    关于树状数组区间最值
    Gym 100500B
    RQNOJ Bus
    关于加权的LIS问题
    vs tip1
    小常识
    我的魔方主力
    killer驱动
    从日升的mecha anime看mecha genre的衰退
    关于供给移动端的视频压制
  • 原文地址:https://www.cnblogs.com/Vito2008/p/pyextned-unpack.html
Copyright © 2011-2022 走看看