python中res代表什么_在下面的代码中,zip(*res)在python中是什么意思?

以下是Allen Downey在github上的Think Bayes著作中的一段代码:def ReadData(filename='showcases.2011.csv'):

"""Reads a CSV file of data.

Args:

filename: string filename

Returns: sequence of (price1 price2 bid1 bid2 diff1 diff2) tuples

"""

fp = open(filename)

reader = csv.reader(fp)

res = []

for t in reader:

_heading = t[0]

data = t[1:]

try:

data = [int(x) for x in data]

# print heading, data[0], len(data)

res.append(data)

except ValueError:

pass

fp.close()

return zip(*res)

我想弄清楚最后一行代码的zip(*res)是什么意思?具体来说:当用作前缀时,“*”起什么作用。接下来呢

zip函数对(*anything)有什么作用

我是Python新手,所以我可能会问一些显而易见的问题。我在函数的docstring中看到了作者的注释,它返回了一个(price1 price2…)的序列,但我不太清楚。在

更新:继James Rettie的anwer之后,我运行他在python3.6中提供的代码时得到的结果如下:

^{pr2}$

而在Python2.7中运行相同的代码会得到如下所示的结果:In [2]: zip(['a', 'b', 'c'], [1, 2, 3])

Out[2]: [('a', 1), ('b', 2), ('c', 3)]

你能解释一下为什么吗?区别在于Python2.7和Python3.6对我来说很重要,因为我必须仍然支持Python2.7,但是我想转到3.6。在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值