首页 > 编程知识 正文

python程序,python网站开发实例

时间:2023-05-05 20:54:51 阅读:61746 作者:171

#导入教程excel文档https://blog.csdn.net/sinat _ 28576553/article/details/81275650

#导入教程oenpyxlexcel文档https://www.cn blogs.com/blueskyj/p/7571787.html

# pip install-I https://安装pypi.tuna.Tsinghua.edu.cn/simpleopenpyxl # openpyxl。 CMD必须以管理员身份运行

#教程tkinter使用https://blog.csdn.net/ahilll/article/details/81531587

导入tkinter as tk # tkinter是python附带的图形开发库

导入openpyxl导入到openpyxl库中,该库中可以修改excel中的单元格内容。

导入随机

窗口=tk.tk (#创建新窗口

window.title (“抽奖”) #窗口中显示的名称

窗口. geometry (' 500 x300 ' ) #窗口的分钟大小

displayword=tk.label(window,text='班级抽签程序',

bg='green ',font=('Arial ',12 ),

width=30、height=2) #设定要显示文本的内容"等级抽选程序",

displayword.pack在窗口中显示文本(系统会自动设置位置)

显示word1=tk.label (window,text='类选项: ',

bg='green ',font=('Arial ',12 ),

width=30,height=2)

显示word1. pack (

设置inputword=tk.entry(window,show=None,font=('Arial ',14 ) )单行输入框,然后输入选定的类

输入word.pack (

displayword2=tk.label(window,text='每个次数上限: ',

bg='green ',font=('Arial ',12 ),

width=30、height=2) #设定要显示文本内容"中奖次数上限: "

显示word2. pack (

inputword2=tk.entry(window,show=None,font=) ' arial ',14 ) )设置单行输入框,然后输入设置的最大选择次数

inputword2.pack (

displayword3=tk.label(window,text='抽签结果',

bg='green ',font=('Arial ',12 ),

width=30、height=2) #设定显示文本的内容"抽签结果"

显示word3. pack (

print'1'#可以通过设置print函数来检测程序运行到了哪个代码。

读取workbook=openpyxl.load _ workbook (列表. xlsx ) (excel语句)列表(.xlsx )

# worksheet=workbook.worksheets [1] #按照工作簿的顺序将0作为第一个表读取

sheet names=str (workbook.sheet names )获取所有工作簿名称。 默认存储格式为list,数据类型必须更改为str

displayword1['text']='类选项:' sheetnames #将displayword1的显示内容更改为'类选项:'str(sheetnames )

打印('2) )。

在def定义函数之前,必须创建新变量。 函数内部新创建的变量是局部变量,函数外部是全局变量(global )。

sheetname=' '

#cols=0

#col=0

rows=0

row=0

cv=''#单元格的值

number=' '

运行时间=0

name=' '

ID=' '

#定义函数,点击按钮后触发的程序。

defclick(:

sheetname=inputword.get(#获取输入框中的工作簿名称

工作簿=workbook [ sheet name ] #使用工作簿名称读取

#cols=worksheet.max_column #获取最大列数

获取rows=worksheet.max_row #最大行数

row=random.randint(2,rows ) #获取随机的一行

#col=random.randint(2,cols )获取随机列数

cv=worksheet.cell (1,1 ).value #获取单元格中第一行、第一列的值

number=worksheet.cell(Row,3 ).value #获取随机行第三列中单元格的值

获取在Numbers=int(inputword2.get )输入框内设置的上限,并转换为int类型

#循环次数控制程序的结果,存在有可能遗漏,概率非常低,存在可以通过调整次数来降低概率的缺点。

运行时间=0

while runtimes=5000:

if number=numbers:

name=worksheet.cell(row,1 ).value #获取随机的第一行、第一列单元格的值和学生姓名

id=str(worksheet.cell(row,2 ).value )获取随机行、列2中单元格的值和学生的学号,并将数据类型转换为str

number=number 1 #学生中奖次数加1

将worksheet.cell(row,3,number )单元格的row行、3列的值更改为number

#打印(cv,name ) )。

displayword3['text']=name ID #将显示在displayword3上的内容设置为提取中学生的姓名和学校号

显示word3. pack (

退出break #循环

else:

runtimes=runtimes 1 #在执行次数上加1

row=random.randint(2,rows ) #获取随机的一行

#col=random.randint(2,cols )获取随机列数

number=worksheet.cell(Row,3 ).value #获取随机行第三列中单元格的值

运行ifruntimes5000:#5000次后仍找不到符合条件的学生

displayword3['text']='没有同学符合条件'将显示在displayword3上的内容设置为“没有同学符合条件”

workbook.save (列表. xlsx ) #保存工作表

B1=tk.button (窗口,text='确认',width=10,

height=2,command=click(#设定按钮的参数

B1 .包() ) )。

# wait=input (双击#.py文件直接运行,以防止程序退出。 编辑状态后,input函数将阻止程序显示tk接口

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。