精华内容
下载资源
问答
  • python zip

    千次阅读 2017-02-21 16:04:28
    zip接受多个序列对象作为参数,返回一个tuple的序列,细节如下: zip(*iterables) Make an iterator that aggregates elements from each of the iterables. Returns an iterator of tuples, where the i-th tuple...

    zip接受多个序列对象作为参数,返回一个tuple的序列,细节如下:

    zip(*iterables)

    Make an iterator that aggregates elements from each of the iterables.

    Returns an iterator of tuples, where the i-th tuple contains thei-th element from each of the argument sequences or iterables. The iterator stops when the shortest input iterable is exhausted. With a single iterable argument, it returns an iterator of 1-tuples. With no arguments, it returns an empty iterator.

    >>> x = [1, 2, 3]
    >>> y = [4, 5, 6]
    >>> zipped = zip(x, y)
    >>> list(zipped) #python3以后,需要list
    [(1, 4), (2, 5), (3, 6)]
    >>> x2, y2 = zip(*zip(x, y))#解压
    >>> x == list(x2) and y == list(y2)
    True


    1)只有一个序列作为参数时

    >>> x = [1,2,3]

    >>> x1 = zip(x)
    >>> list(x1)
    [(1,), (2,), (3,)]


    2)无参时

    >>> list(zip())
    []


    3)zip([x]*3) 与 zip(*[x]*3)

    >>> x = [1,2,3]

    >>> [x]*3
    [[1, 2, 3], [1, 2, 3], [1, 2, 3]]

    >>> list(zip([x]*3))
    [([1, 2, 3],), ([1, 2, 3],), ([1, 2, 3],)]
    >>> list(zip(*[x]*3))
    [(1, 1, 1), (2, 2, 2), (3, 3, 3)]

    原因:在函数调用中使用*list/tuple的方式表示将list/tuple分开,作为位置参数传递给对应函数(前提是对应函数支持不定个数的位置参数)


    展开全文
  • Python zip函数详解

    千次阅读 2017-08-11 13:49:58
    Python zip函数详解

    转载自:http://www.cnblogs.com/frydsh/archive/2012/07/10/2585370.html

    Python的zip函数

    zip函数接受任意多个(包括0个和1个)序列作为参数,返回一个tuple列表。具体意思不好用文字来表述,直接看示例:

    1.示例1:

    复制代码
    x = [1, 2, 3]
    
    y = [4, 5, 6]
    
    z = [7, 8, 9]
    
    xyz = zip(x, y, z)
    
    print xyz
    复制代码

    运行的结果是:

    [(1, 4, 7), (2, 5, 8), (3, 6, 9)]

    从这个结果可以看出zip函数的基本运作方式。

    2.示例2:

    x = [1, 2, 3]
    y = [4, 5, 6, 7]
    xy = zip(x, y)
    print xy

    运行的结果是:

    [(1, 4), (2, 5), (3, 6)]

    从这个结果可以看出zip函数的长度处理方式。

    3.示例3:

    x = [1, 2, 3]
    x = zip(x)
    print x

    运行的结果是:

    [(1,), (2,), (3,)]

    从这个结果可以看出zip函数在只有一个参数时运作的方式。

    4.示例4:

    x = zip()
    print x

    运行的结果是:

    []

    从这个结果可以看出zip函数在没有参数时运作的方式。

    5.示例5:

    复制代码
    x = [1, 2, 3]
    
    y = [4, 5, 6]
    
    z = [7, 8, 9]
    
    xyz = zip(x, y, z)
    
    u = zip(*xyz)
    
    print u
    复制代码

    运行的结果是:

    [(1, 2, 3), (4, 5, 6), (7, 8, 9)]

    一般认为这是一个unzip的过程,它的运行机制是这样的:

    在运行zip(*xyz)之前,xyz的值是:[(1, 4, 7), (2, 5, 8), (3, 6, 9)]

    那么,zip(*xyz) 等价于 zip((1, 4, 7), (2, 5, 8), (3, 6, 9))

    所以,运行结果是:[(1, 2, 3), (4, 5, 6), (7, 8, 9)]

    注:在函数调用中使用*list/tuple的方式表示将list/tuple分开,作为位置参数传递给对应函数(前提是对应函数支持不定个数的位置参数)

    6.示例6:

    x = [1, 2, 3]
    r = zip(* [x] * 3)
    print r

    运行的结果是:

    [(1, 1, 1), (2, 2, 2), (3, 3, 3)]

    它的运行机制是这样的:

    [x]生成一个列表的列表,它只有一个元素x

    [x] * 3生成一个列表的列表,它有3个元素,[x, x, x]

    zip(* [x] * 3)的意思就明确了,zip(x, x, x)

    展开全文
  • python zip( )函数

    千次阅读 2016-05-22 19:49:15
    python zip()函数

    本文介绍python中zip( )函数的使用:

    >>> help(zip)

    Help on built-in function zip in module __builtin__:


    zip(...)
        zip(seq1 [, seq2 [...]]) -> [(seq1[0], seq2[0] ...), (...)]
        
        Return a list of tuples, where each tuple contains the i-th element
        from each of the argument sequences.  The returned list is truncated

        in length to the length of the shortest argument sequence.

    zip([seq1, ...])接受一系列可迭代对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。若传入参数的长度不等,则返回列表的长度和参数中长度最短的对象相同。

    1》
    >>> x=[1,2,3]
    >>> y=[1,2,3]
    >>> z=(1,2,3)
    >>> zip(x,y,z)
    [(1, 1, 1), (2, 2, 2), (3, 3, 3)]
    2》
    >>> x=(1,2,3,4)
    >>> y=[1,2,3]
    >>> zip(x,y) #传入参数的长度不等,则返回列表的长度和参数中长度最短的对象相同
    [(1, 1), (2, 2), (3, 3)]
    3》
    >>> x
    (1, 2, 3, 4)
    >>> zip(x)
    [(1,), (2,), (3,), (4,)]
    4》
    >>> zip()
    []

    5》zip()配合*号操作符,可以将已经zip过的列表对象解压
    >>> x=[1,2,3]
    >>> y=['a','b','c']
    >>> z=[4,5,6]
    >>> xyz=zip(x,y,z)
    >>> xyz
    [(1, 'a', 4), (2, 'b', 5), (3, 'c', 6)]
    >>> zip(*xyz)
    [(1, 2, 3), ('a', 'b', 'c'), (4, 5, 6)]

    6》
    >>> x=[5,6,7]
    >>> [x] #[x]生成一个列表的列表,它只有一个元素x
    [[5, 6, 7]]
    >>> [x]*3 #[x] * 3生成一个列表的列表,它有3个元素,[x, x, x]
    [[5, 6, 7], [5, 6, 7], [5, 6, 7]]
    >>> x
    [5, 6, 7]
    >>> zip(*[x]*3) #zip(* [x] * 3)等价于zip(x, x, x)
    [(5, 5, 5), (6, 6, 6), (7, 7, 7)]

    7》

    >>> name=['song','ping','python']
    >>> age=[26,26,27]
    >>> zip(name,age)
    [('song', 26), ('ping', 26), ('python', 27)]
    >>> for n,a in zip(name,age):
    ...     print n,a
    ... 
    song 26
    ping 26
    python 27

    (完)


    展开全文
  • python zip文件压缩_python

    python自带了zipfile,貌似支持ZIP64,看帮助文档里好像有个选项

    今天我的工作只是备份,所以只是创建zip档,其他就不关心了 ……

    #!/usr/bin/env python
    #coding=gbk
    # python[AT]Live.it
    import os
    import sys
    import getopt
    import string
    import zipfile
     
    # print Help message
    def Help():
        print "Usage : python %s -t D://dir -z test.zip" %sys.argv[0]
        sys.exit(0)
    # get options
    try:
        opts , args = getopt.getopt(sys.argv[1:], "ht:z:")
    except getopt.GetoptError:
        print "/tBad arguments !"
        Help()
    # enum options
    if 0 == len(opts):
        Help()
    for o,v in opts:
        if ‘-h‘ == o.lower():
            Help()
        if ‘-t‘ == o.lower():
            target = v
        if ‘-z‘ == o.lower():
            zipname = v
    # zip directory
    def zipDirectory(dir):
        dir = dir.strip()
        for (root,dirs,files) in os.walk(dir):
            for filename in files:
                print "Zip : %s" %(root+os.sep+filename)
                z.write(root+os.sep+filename)
        z.close()
    # zip single file
    def zipSingleFile(singleFile):
        print "Zip : %s" %singleFile
        singleFile = singleFile.strip()
        z.write(singleFile )
        z.close()
    # run it
    if os.path.isdir(target):
        z = zipfile.ZipFile(zipname,‘w‘)
        zipDirectory(target)
    if os.path.isfile(target):
        z = zipfile.ZipFile(zipname,‘w‘)
        zipSingleFile(target)
    run it

    D:/>python zip.py -t D:/WIR -z E:/wir.zip
    Zip : D:/WIR/Clip.py
    Zip : D:/WIR/getClip.pl
    Zip : D:/WIR/getClip.py
    Zip : D:/WIR/openfiles.bmp
    Zip : D:/WIR/Thumbs.db
    Zip : D:/WIR/01/logosessions.png
    Zip : D:/WIR/01/netsession.png
    Zip : D:/WIR/01/netstat.png
    Zip : D:/WIR/01/psloggedon.png
    Zip : D:/WIR/01/tcpvcon.png
    Zip : D:/WIR/01/wir

    D:/>ls E:/wir.zip
    E:/wir.zip

    展开全文
  • python zip()函数

    千次阅读 2018-03-29 19:51:14
    python zip()函数  # print(len(data)) batch 个 tuple(torch.float(3,224,224), str)  # print(data[0][0].size()) [3,224,224]  # print(data[0][1].size()) [len]  images, captions = z
  • python zip函数

    千次阅读 2020-02-08 20:30:21
    使用zip()函数来可以把列表合并,并创建一个元组对的列表 我语言表达起来可能有些粗糙,话不多说看示例 #示例 l1=[1,2,3] lt2=[4,5,6] lt3=zip(l1,lt2) #zip()是可迭代对象,使用时必须将其包含在一个list中,...
  • python zip函数小结

    千次阅读 2019-04-04 15:13:56
    zippython中的一个内建函数,平时用得不是太多。zip的签名如下: def zip(seq1, seq2, *more_seqs): # known special case of zip """ zip(seq1 [, seq2 [...]]) -> [(seq1[0], seq2[0] ...), (...)] ...
  • python zip函数基础

    千次阅读 2017-04-29 13:19:46
    又是在写一个小项目时用到了python的某个知识点函数,由于在实际的项目中用到了所以觉得应该复习一下它的基本知识了 zip函数 通俗一点就是一个可以结合多个列表的一个函数 也参照了其他一些博客的精髓,接下来我们...
  • 一、方法1: 单文件模块直接把文件拷贝到 $python_dir/Lib二、方法2: 多文件模块,带setup.py下载模块包(压缩文件zip或tar.gz),进行解压,CMD->cd进入模块文件夹,执行:python setup.py install三、 方法3:...
  • Python zip函数详解+和izip和zip_longest的比较辨析

    千次阅读 多人点赞 2018-12-20 20:18:06
    目录   1. zip()函数 1.1 zip()函数的用法 1.2 zip()函数的应用 1.3 *zip()的用法 ...3. itertools.zip_...zipPython的内置函数,通过help查看其使用方式如下: help(zip) Help on built-in function z...
  • Python zip()与zip(*)区别

    千次阅读 2018-04-20 17:34:47
    描述zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组...
  • python zip压缩文件下载及解压

    千次阅读 2019-09-19 10:23:43
    第一步 zip文件下载 这里是多个zip文件下载链接存在列表中,用requests请求链接,写入到本地文件夹,命名同下载链接中命名相同,通过设置参数stream=True,可使下载的文件分块持续写入磁盘文件中,否则会先下载到...
  • Python zip()函数使用

    千次阅读 2018-06-24 18:59:44
    zip()函数可以把两个 list 变成一个 list: >>> zip([10, 20, 30], ['A', 'B', 'C']) [(10, 'A'), (20, 'B'), (30, 'C')] 在迭代 [‘Adam’, ‘Lisa’, ‘Bart’, ‘Paul’] 时,如果我们...
  • python zip 快速生成字典

    千次阅读 2019-03-12 11:41:46
    a = ['a','b','c','d'] b = [1,2,3] mydict = dict(zip(a,b)) print mydict
  • python zip()函数

    千次阅读 2018-05-14 09:51:38
    zip()函数是python代码中非常常用的一个操作。其以可迭代对象为输入参数,将可迭代对象里元素分别取出再组合成一个个元组,返回一个列表。分为两种情况:一、输入参数只有一个可迭代对象:二、输入参数有两个可...
  • python zip 生成字典

    千次阅读 2016-05-01 22:29:43
    #zip的使用 a=(1,2,3) b=(4,5,6) c=zip(a,b) printc [(1,4),(2,5),(3,6)] #逆向 printzip(*c) [(1,2,3),(4,5,6)] #字典 importstring str_upper=[iforiinstring.uppercase] int_list=...
  • python中,zip对象只可被访问一次 看代码: a = [1,2,3,4,5] b = [6,7,8,9,10] c=zip(a,b) print(type©) print© for i,j in c: print(i,j) print("************************") for k,l in c: print(...
  • Python zip()使用方法

    千次阅读 2016-10-27 07:59:48
    转载自:... zip函数接受任意多个(包括0个和1个)序列作为参数,返回一个tuple列表。 具体看例子: 1.示例1: x = [1, 2, 3] y = [4, 5, 6] z = [7, 8, 9] xyz = zip(x, y, z) print
  • python zip()方法

    千次阅读 2015-04-09 17:49:25
    原文链接 一、代码引导 首先看这一段代码: ... 1 >>> name=('jack','beginman','sony','pcky') ... 3 >>> for a,n in zip(name,age): 4 print a,n 5 6 输出: 7 jack 2001 8 beginman 20
  • python zip()和zip(*)的区别

    万次阅读 多人点赞 2017-11-09 16:00:51
    可以看成是解压和压缩的区别,zip相当与压缩 zip(*)相当于解压。 举例说明: x=["a","1"] y=["b","2"] z = list(zip(x,y)) print (list(zip(x,y))) print (list(zip(*z))) 结果为: [('a', 'b'), ('1'...
  • Python zip()函数的用法

    千次阅读 2015-07-20 23:15:57
    Python函数式编程之zip()zip() zip()函数接受0个或多个序列作为参数,返回一个tuple列表。 zip()函数具体的工作机制是,将每个列表中同一位置的元素取出来组成一个元组,存放到一个列表中,然后返回这个列表。举例...
  • python zip()并行遍历

    千次阅读 2017-06-14 21:48:51
    zip()基本操作方法 例如,有两个列表: a = [1,2,3] b = [4,5,6] ...使用zip()函数来可以把...在python 3.0中zip()是可迭代对象,使用时必须将其包含在一个list中,方便一次性显示出所有结果 list(zip(a,b)) [(1,
  • zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。 如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组...
  • python zip 遍历两个不同长度的列表

    千次阅读 2020-08-03 15:08:29
    今天遇到一个问题需要同时遍历两个列表,但是这两个列表长度却不一定相同,但还是想到了用zip,因为zip可以将对象打包成一个元组,这样就可以一起遍历了。于是我进行了如下尝试: a = [1,2,3,4,5,6] b = [11,12,13] ...
  • python zip 同时迭代多个序列

    千次阅读 2017-11-10 16:00:17
    python 3中zip相当于生成器,遍历过程中产生元祖,python2会把元祖生成好,一次性返回整份列表 zip(x,y,z)会生成一个可返回元组 (x,y,z) 的迭代器 x = [1, 2, 3, 4, 5] y = ['a', 'b', 'c', 'd', 'e'] z = ['a1',...
  • Python zip()用法,看这一篇就够了

    千次阅读 多人点赞 2020-02-19 13:37:38
    zip()是Python的一个内建函数,在官方的文档中,它的描述是这样的: Make an iterator that aggregates elements from each of the iterables. Returns an iterator of tuples, where the i-th tuple contains the ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 205,981
精华内容 82,392
关键字:

pythonzip

python 订阅