lambda、for和np.random.randint实例解释

f = lambda : int ( '' .join(np.random.choice( list ( '0123456789' ))
for i in range (np.random.randint( 1 , DIGITS + 1 ))))
f 是一个函数;lambda表示一个表达式,定义了一个匿名函数,函数主体是

int(''.join(np.random.choice(list('0123456789'))
                for i in range(np.random.randint(1, DIGITS + 1))))

循环n次,每次从'0123456789'中随机取一个数字(字符串格式),每次获取的字符使用''.join函数连接。
循环次数假设为n,n 由np.random.randint(1, DIGITS + 1) 生成
np.random.randint(1, DIGITS + 1)表示在1(包含1)和DIGITS + 1(不包含)数据(int类型)范围随机取一个数
例如:n = 2
第一次:从'0123456789'中随机取 1 (字符串)
第二次:从'0123456789'中随机取 2(字符串)

则连接后为12 (字符串),再用int()函数转换为数字12

猜你喜欢

转载自blog.csdn.net/wyx100/article/details/80643280