python ---匿名函数lambda 匿名函数的练习 字符串补充(生成验证码,内推码)


匿名函数的关键字为lambda,冒号前面是形参 冒号后面是返回值

from functools import reduce

 def add(x,y):
     return x + y
 print(reduce(lambda x,y:x+y,[1,2,3,4,5]))    //连加1+2+3+4+5
结果:15

#求元素的平方
 print(list(map(lambda x:x ** 2,range(5))))
结果:[1,4,9,16,25]


#求10的阶乘
 print(reduce(lambda x,y:x*y,range(1,11)))
结果:3628800


#匿名函数的默认参数
 f = lambda x,y=2:x**y
 print(f(3))
结果:9
 print(f(2,4))
结果:16

#匿名函数的可变参数:
f = lambda *args:sum(args)
 print(f(1,2,3,45,6))
结果:57

#匿名函数的关键字参数:
 f = lambda **kwargs:kwargs.keys()
 print(f(name='fentiao',age=10))
结果:dict_keys(['name','age'])

 f = lambda **kwargs:kwargs.values()
 print(f(name='fentiao',age=10))
结果:dict_values(['feniao',10])
"""
nums = [0, 7, 0, 1, 2, 1, 5, 1, 7, 8, 0, 67, 1, 3, 4]
"""
nums = [0, 7, 0, 1, 2, 1, 5, 1, 7, 8, 0, 67, 1, 3, 4]
print(sorted(nums,key=lambda x:1 if x == 0 else 0))
结果:[7,1,2,1,5,1,7,8,67,1,3,4,0,0,0]
"""
如何快速生成验证码,内推码
"""

import random
import string

code_str = string.ascii_letters + string.digits
print(code_str)

def gen_code(len=4):
    return ''.join(random.sample(code_str,len))

# print(gen_code())
print([gen_code() for i in range(1000)])    //生成1000个4位数的验证码

猜你喜欢

转载自blog.csdn.net/yinzhen_boke_0321/article/details/86599989