Python程序开发之简单小程序实例(7)双色球随机选号程序
Python程序开发之简单小程序实例
(7)双色球随机选号程序
一、项目功能
根据用户选择的功能项,完成随机选取单式号和复式号。
二、项目分析
程序功能为福彩双色球单式和复式的随机选号。
根据程序要实现的功能,我们将程序分为两块:用户提示输入和功能实现主体。
用户提示输入主要完成为用户提供项目功能的可选择提示性信息,指引用户完成功能选择。
功能实现主体为根据用户选择的功能项,使用while和for循环、if判断语句和random随机数生成函数来完成相应的功能项。
三、程序源代码
#!/usr/bin/python3.6
# -*- coding: GBK -*-
# 利用random函数制作福彩双色球随机选号程序
# 导入 random 模块
import random
rb=[]
print("请选择下面的选项:")
print("1、单式(红球6个,蓝球1个)")
print("2、复式(6<红球<21,蓝球1个)")
print("3、退出")
choice_n = int(input("输入选项数字( 1 或 2 ),如要退出请选择 3 :"))
choice_d=1
input_flag=1
while (input_flag==1):
if choice_n==1 :
choice_d = int(input("请输入要随机生成的注数(20以内):"))
if choice_d==0 or choice_d>20:
print("输入错误,请重新输入!")
print("请输入大于0,小于等于20的数字!")
input_flag=1
else :
for i in range(1,choice_d+1):
rb=random.sample(range(1, 34), 6)
rb.sort()
rb_blue=random.randint(1, 17)
rb_str=str(rb[0])+" "+str(rb[1])+" "+str(rb[2])+" "+str(rb[3])+" "+str(rb[4])+" "+str(rb[5])+"-"+str(rb_blue)
print(rb_str)
break
elif choice_n==2 :
choice_d = int(input("请输入要随机生成的注数(20以内):"))
if choice_d==0 or choice_d>20:
print("输入错误,请重新输入!")
print("请输入大于0,小于等于20的数字!")
input_flag=1
else :
choice_red = int(input("请输入红球个数(大于6,小于21):"))
if 20<choice_red<7:
print("输入错误,请重新输入!")
print("红球个数应大于6,小于21!")
input_flag=1
else :
for i in range(1,choice_d+1):
rb=random.sample(range(1, 34), choice_red+1)
rb.sort()
rb_blue=random.randint(1, 17)
for j in range(0,choice_red):
if j==0:
rb_str=str(rb[j])+" "
elif j==choice_red-1 :
rb_str=rb_str+str(rb[j])
else :
rb_str=rb_str+str(rb[j])+" "
rb_str=rb_str+"-"+str(rb_blue)
print(rb_str)
break
elif choice_n==3 :
break
else :
print("输入错误,请重新输入!")
choice_n = int(input("输入选项数字( 1 或 2 ),如要退出请选择 3 :"))
input_flag=1
四、代码解释
第一行为引用python版本,本实例为python3.6
第二行是程序编码引用,因为在程序中包含有中文字符,所以必须引用GBK,否则就会报错。
第六行为导入random随机数生成函数。
第八行为定义的一个列表变量,用于存储生成的随机数。
第十至第十四行为提示及输入信息,提示用户选择和按要求输入需要的功能项数字。
第十五行定义变量choice_d,用于存储用户输入的注数,默认值为1。
第十六行定义变量input_flag,用于控制while循环,默认值为1.
第十七至六十九行为while循环功能主体,嵌套的第一个也就是最外层的if判断语句,用来实现对用户输入选择项的判断:
第十九至三十一行为第一个IF块嵌套的第二个IF判断语句,用于完成单式随机数的生成。
第三十四至六十一行为第一个最外层判断语句嵌套的第一个ELIF块,用于完成复式随机数的生成。
第六十三至六十四行为第一个最外层判断语句嵌套的第二个ELIF块,用于用户退出。
第六十七至六十九行为判断用户输入错误时的提示。
五、运行
1、提示用户选择功能
2、根据用户输入完成相应功能:
下一篇:《Python程序开发之简单小程序实例(8)》
更多精彩内容将在以后的章节分享给朋友们,请添加好友至收藏,欢迎点赞并关注后期内容更新!