详解用python写一个抽奖程序

yipeiwu_com7年前Python基础

第一次使用python写程序,确实比C/C++之类方便许多。既然这个抽奖的数据不大,对效率要求并不高,所以采用python写,更加简洁、清晰、方便。

1.用到的模块

  1. 生成随机数的模块random
  2. 用来读取excel表格的模块xlrd

2.思路:首先打开excel表格,然后读取其中某个单元格或者某行或某列的元素,进行输出或存储。

3.如何保证随机:随机的关键在于取随机数。每抽一个人之前,我们随机生成一个随机数i,i代表了读取第i个人的数据,由于i的生成是完全随机的,所以也就保证了选取的人员是完全随机的。

4.代码实例:

import xlrd,random#导入读取excel的模块xlrd,取随机数的模块random
data = xlrd.open_workbook("01.xls")#xlrd模块中的函数
table = data.sheet_by_index(0)#同上
num = input("请输入抽奖人数:")
start = input("请输入起始位置:")
end = input("请输入结束位置:")
start = eval(start)#将字符串转换为整数
end = eval(end)
num = eval(num)
print("获奖名单为:")
for i in range(num):
  idx = random.randint(start,end+1)
  tmp = table.cell_value(idx,1)#将读取到的元素临时存储到tmp中
  print(tmp)#输出tmp中存储的值

以上所述是小编给大家介绍的用python写一个抽奖程序详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对【听图阁-专注于Python设计】网站的支持!

相关文章

Python常用的内置序列结构(列表、元组、字典)学习笔记

列表与元组 列表用大括号[]表示,元组用圆括号()表示。 列表可以修改,字符串与元组不可修改。 元组的分片还是元组,列表的分片还是列表。 1.列表方法: name=["zhang3"...

python如何定义带参数的装饰器

本文实例为大家分享了python定义带参数装饰器的具体代码,供大家参考,具体内容如下 案例:        实现一个装饰器,用...

Python中functools模块函数解析

Python自带的 functools 模块提供了一些常用的高阶函数,也就是用于处理其它函数的特殊函数。换言之,就是能使用该模块对可调用对象进行处理。 functools模块函数概览...

python利用smtplib实现QQ邮箱发送邮件

python利用smtplib实现QQ邮箱发送邮件

python的smtplib提供了一种很方便的途径发送电子邮件。它对smtp协议进行了简单的封装。 下面是一个利用smtplib,实现QQ邮箱发送邮件的例子。 首先必须要打开QQ邮箱的s...

Python2.x版本中基本的中文编码问题解决

Python 输出 "Hello, World!",英文没有问题,但是如果你输出中文字符"你好,世界"就有可能会碰到中文编码问题。 Python 文件中如果未指定编码,在执行过程会出现报...