python 常用的内置函数sorted、zip、map、eval

版权声明:本文为博主原创文章,欢迎讨论共同进步。 https://blog.csdn.net/tz_zs/article/details/82804681

____tz_zs

sorted

sorted()函数,接收任何可迭代对象,返回一个排序后的新对象。

l1 = [2, 4, 3, 1, "6", "a", 5, 9, 7]
new_l1 = sorted(l1)
print(new_l1)
# [1, 2, 3, 4, 5, 7, 9, '6', 'a']

# sorted()函数可对任意可迭代对象进行排序
l3 = ['a', 'A', 'b', 'B', 'c', 'C']
new_l3 = sorted(l3)
print(new_l3)
# ['A', 'B', 'C', 'a', 'b', 'c']

# key参数的值是一个函数,他对list中的每个原始执行操作后作为排序依据。
new_list1 = sorted(l1, key=lambda x: x * -1)
print(new_list1)

l4 = [['aa', 2], ['bb', 1], ['cc', 3]]
new_l4 = sorted(l4, key=lambda x: x[1])
print(new_l4)
# [['bb', 1], ['aa', 2], ['cc', 3]]

zip

zip() 函数传入可迭代的对象,将对象中的元素打包成一个个元组,然后返回由这些元组组成的列表。
如果可迭代对象的元素个数不一样,则返回列表长度与最短的对象相同。

#!/usr/bin/python2.7
# -*- coding:utf-8 -*-

"""
@author:    tz_zs
"""

l1 = [2, 4, 3, 1, "6", "a", 5, 9, 7]
l2 = [22, 44, 33, '11', 66, 'aa', '55']

# zip()
result = zip(l1, l2)
print(result)
# [(2, 22), (4, 44), (3, 33), (1, '11'), ('6', 66), ('a', 'aa'), (5, '55')]

map

map()函数接收两个参数,第一个参数是函数function,第二个是序列sequence。map将传入的函数依次作用到序列的每个元素,并把结果作为新的list返回。

#!/usr/bin/python2.7
# -*- coding:utf-8 -*-

result = map(lambda x: x * x, [1, 2, 3])
print(result)
# [1, 4, 9]

eval

eval(source, globals=None, locals=None)
eval() 函数用来执行一个字符串表达式,并返回表达式的值。

#!/usr/bin/python2.7
# -*- coding:utf-8 -*-

x = 3
result = eval('4*x')
print(result)  # 12

result = eval('x**3')
print(result)  # 27

result = eval('3+3')
print(result)  # 6

result = eval('x*x')
print(result)  # 9

猜你喜欢

转载自blog.csdn.net/tz_zs/article/details/82804681