python3.6中内置函数变化

    最近学习发现,python3.x比之与python2.x,许多内置要么不再是内置函数,要么已经改变调用方式。因此决定把已知的变化写下,以作参考。

reduce(function,iterable):

    目前reduce函数已经移到functools模块中,调用前需要先导入functools模块:

import functools
functools.reduce(lambda x,y:x+y,range(10))

map(function,iterable):

    依然是内置函数,但是输出方式变了,需要以列表方式输出:

list(map(lambda x,y:x+y,[1,3,5,7],[2,4,6,8]))

sort()和sorted()函数的区别:

1.list函数中存在sort 函数以进行排序:

L=[1,3,5,9,7,2]
L.sort(reverse=False)#默认以逆序方式输出

list.sort(cmp=None,key=None,reverse=False)    #这是默认格式,key为需要比较的参量,只有一个,reverse为True是以逆序排列,cmp为比较函数,可以用来选择排序方式

2.自带sorted()排序:

L=[('b',2),('a',3),('c',1)]
sorted(L,key=lambda x:x[0],reverse=False)#key表示第一个参数,即比较'a','b','c'

3.list.sort()也可以比较二维数组:

L.sort(key=lambda x:x[1],reverse=False)
print(L)#key指向第二个参数,比较1,2,3


猜你喜欢

转载自blog.csdn.net/augustmoore/article/details/80743480