博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python中zip函数
阅读量:6295 次
发布时间:2019-06-22

本文共 1227 字,大约阅读时间需要 4 分钟。

zip函数接受任意多个(包括0个和1个)序列作为参数,返回一个tuple列表。(在海豚实习时自己写了一个要用到zip的函数,那个例子非常代表性)

示例1

for i,j in zip(range(3),range(5)):    print(zip(range(3),range(5)))    print(i)    print(j)xbwang@xbwang-desktop:~/Desktop$ python un.py [(0, 0), (1, 1), (2, 2)]00[(0, 0), (1, 1), (2, 2)]11[(0, 0), (1, 1), (2, 2)]22 可以看到zip返回出来的还是一个tuple列表,print(i)和print(j)之所以返回的是一个一个的数,而不是tuple列表,就相当于你在一个tuple列表里面进行for循环,一样返回的是里面的元素

 

示例2

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)]

示例3,在两个list长度不相等时的情况:

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

运行的结果是:

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

示例4

>>> name=('jack','beginman','sony','pcky')>>> age=(2001,2003,2005,2000)>>> for a,n in zip(name,age):    print a,n输出:jack 2001beginman 2003sony 2005pcky 2000

示例5,只有一个list的情况:

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

运行的结果是:

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

 

 

 

特别注意:在文件读写中也可以运用zip函数

f = open('/home/xbwang/Desktop/id_title','r')f1 = open('/home/xbwang/Desktop/res','r')f2 = open('/home/xbwang/Desktop/pos','r')f3 = open('/home/xbwang/Desktop/cut_pos1','a')for line,line1,line2 in zip(f,f1,f2):    line = line[:-1]    line1 = line1[:-1]    f3.write(line+'     '+line1+'     '+line2)

这是我自己写的一个将3个文件的内容按照一定规则排列写到一个文件里。

 

查询这个,经常会去查询多变量的for循环

转载地址:http://mhdta.baihongyu.com/

你可能感兴趣的文章
本地系统服务例程:Nt和Zw系列函数
查看>>
mysql 案例 ~ 常见案例汇总
查看>>
jmeter if 控制器
查看>>
Spring定时器时间设置规则
查看>>
算法のLowLow三人行
查看>>
appcompat_v7出现红叉解决方法
查看>>
javascript事件之:jQuery事件接口概述
查看>>
概率统计与机器学习:常见分布性质总结
查看>>
wcf部署到服务器上后,取不出oralcle数据
查看>>
嵌入式LINUX入门到实践(二)
查看>>
Linux的三种特殊权限
查看>>
PKU 2068 Nim
查看>>
测试基础-1.1
查看>>
15、响应式布局和BootStrap 全局CSS样式知识点总结-part2
查看>>
【MySQL】通过Binary Log简单实现数据回滚(一)
查看>>
255.Spring Boot+Spring Security:使用md5加密
查看>>
记录一款SQLite数据库管理软件
查看>>
将Oracle的语言从中文修改为英文
查看>>
matlab编译错误代码中英对照
查看>>
Python 元组
查看>>