python 练习洗牌
生成随机数需要引入random模块,学习下random模块中常用的几个函数:
random.random() 用于生成一个0到1的随机符点数: 0 <= n < 1.0
random.uniform 函数原型为:random.uniform(a, b),用于生成一个指定范围内的随机符点数,两个参数其中一个是上限,一个是下限。
random.randint() 函数原型为:random.randint(a, b),用于生成一个指定范围内的整数。其中参数a是下限,参数b是上限,生成的随机数n: a <= n <= b
random.randrange函数原型为:random.randrange([start], stop[, step]),从指定范围内,按指定基数递增的集合中 获取一个随机数。如:random.randrange(10, 100, 2),结果相当于从[10, 12, 14, 16, ... 96, 98]序列中获取一个随机数。random.randrange(10, 100, 2)在结果上与 random.choice(range(10, 100, 2) 等效。
random.choice 从序列中获取一个随机元素。其函数原型为:random.choice(sequence)。参数sequence表示一个有序类型。这里要说明 一下:sequence在python不是一种特定的类型,而是泛指一系列的类型。list, tuple, 字符串都属于sequence。
random.shuffle 函数原型为:random.shuffle(x[, random]),用于将一个列表中的元素打乱。
random.sample 函数原型为:random.sample(sequence, k),从指定序列中随机获取指定长度的片断。sample函数不会修改原有序列。
扑克牌:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 | #coding=utf-8 import random poker_num = [ str (i) for i in range ( 2 , 11 )] #数字牌 poker_str = [ 'A' , 'J' , 'Q' , 'K' ] #字母牌 poker_king = [ '大王' , '小王' ] #大小王 poker_color = [ '红' , '黑' , '方' , '花' ] #花色 pokers = [ '%s%s' % (i,j) for i in poker_color for j in poker_num + poker_str] + poker_king #生成54张牌 print ( len (pokers)) random.shuffle(pokers) #随机洗牌 #print(pokers) poker_a = pokers[ 0 : 51 : 3 ] #斗地主玩法 poker_b = pokers[ 1 : 51 : 3 ] poker_c = pokers[ 2 : 51 : 3 ] last_3 = pokers[ - 3 :] print ( 'A:' ,poker_a) print ( 'B:' ,poker_b) print ( 'C:' ,poker_c) print ( '最后三张:' ,last_3) |
大乐透:
“35选5加12选2”玩法属于双区选号大乐透,玩法简单易懂,彩民们在购买“35选5加12选2”时,可以从01-35共35个号码中,选取5个号码为前区号码,并从01-12共12个号码中选取2个号码为后区号码,组合为一注进行单式投注。
如:
1 daletou_qian = [i for i in range(1,36)] #前区 01-35共35个号码可选择 2 daletou_hou = [i for i in range(1,13)] #后区 01-12共12个号码可选择 3 daletou_qian_random = random.sample(daletou_qian,k=5)#随机选取5个前区号码 4 daletou_hou_random = random.sample(daletou_hou,k=2) #随机选取2个后区号码 5 print(daletou_qian_random+daletou_hou_random) #前区随机5个,后区随机2个,组合为一注进行单式投注
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步