python 一句话语句

python以其强大和简洁的语言让人折服,那么究竟有多强大,多简洁呢?在今天学习python的过程中,我来举个例子。

in:将以下列表转化成{‘a’:1,’b':2}的形式

var = [('a','A',1),
       ('b','B',2),
       ('c','C',3)]

方法1:

tmp1 = []
tmp2 = []
for i in range(3):
 val1 = var[i][0]
 val2 = var[i][2]
 tmp1.append(val1)
 tmp2.append(val2)

tmpdict = {}.formatkeys(tmp1,0)
for i in range(3)
 tmpdict[tmpdict.keys()[i]] = tmp2[i]

当然我有意的拉长了代码。

方法2:

tmp1 = []
tmp2 = []
for i in range(3):
 tmp1.append(var[i][0])
 tmp2.append(var[i][2])
tmpdict = dict(zip(tmp1,tmp2))

采用zip压缩数组,然后转换成dict

方法3:

 tmpdict = {i[0]:i[2] for i in var}

一句话循环并组成字典。

同样的还有很多地方用到,比如lambda,reduced,filter,cmp等这类函数的应用。能大大减少代码量。更有意思的可以查看:一行 Python 能实现什么丧心病狂的功能?

 

 



十一月 26th, 2015 by