项目实战基于Pthon+PyQt5的GUI点名程序(附完整源码)
Posted 兵 慌 码 乱
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了项目实战基于Pthon+PyQt5的GUI点名程序(附完整源码)相关的知识,希望对你有一定的参考价值。
1、项目说明
基于python+PyQt5的GUI点名程序项目实战
项目需要安装pycharm社区版或专业版都可,以及项目所需的所有模块
项目需要安装 pyqt5、pywin32及其他一些模块
安装命令如下:
- pip install -i https://pypi.tuna.tsinghua.edu.cn/simple 模块名称
- 如安装 pyqt5:pip install -i https://pypi.tuna.tsinghua.edu.cn/simple pyqt5
2、项目主要技术
-
python编程技术
-
pyqt5界面编程
3、项目结构
-
name.txt 点名文件
-
main.py 界面和功能实现代码
4、项目主要功能
-
随机点名
-
设置人数点名
-
自定义点名列表
5、部分源码
main.py
"""
项目名称:python pyqt5的gui点名程序
作者:bhml
时间:2023/1/28
代码功能:python pyqt5点名程序实现
"""
01导入所需模块
import os
import sys
from random import randint
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtCore import Qt, QTimer
from PyQt5.QtGui import *
from PyQt5.QtWidgets import *
from win32api import MessageBox
from win32con import MB_OK, MB_ICONWARNING
02定义参数
running = False # 是否点名
name = True # 抽中的名字
seed = False # 是否查看点过的名字
choud = False # 是否采用连抽模式
03读取点名文件的内容
try:
name_list = []
with open(\'name.txt\', encoding=\'utf8\') as f:
for line in f.readlines():
name_list.append(line.strip(\'\\n\')) # strip(\'\\n\')去掉字符串中的\'\\n\'
if not name_list:
with open(\'name.txt\', \'w\') as f:
f.truncate() # 截断文件,相当于删除文件的所有内容
a = \'\'
for i in range(51):
a += str(i) + \'\\n\'
f.write(a)
with open(\'name.txt\', encoding=\'utf8\') as f:
for line in f.readlines():
name_list.append(line.strip(\'\\n\')) # strip(\'\\n\')去掉字符串中的\'\\n\'
except:
with open(\'name.txt\', \'w\') as f:
f.truncate() # 截断文件,相当于删除文件的所有内容
a = \'\'
for i in range(51):
a += str(i) + \'\\n\'
f.write(a)
name = False
MessageBox(0, "请及时修改当前目录下name文件,默认将为0-50", "MessageBox", MB_OK | MB_ICONWARNING)
name_list = []
with open(\'name.txt\', encoding=\'utf8\') as f:
for line in f.readlines():
name_list.append(line.strip(\'\\n\')) # strip(\'\\n\')去掉字符串中的\'\\n\'
代码
## 6、运行截图
![](https://image.cha138.com/20230316/02afca5406134b73b498aeacf3e34b7b.jpg)
![](https://img2023.cnblogs.com/blog/1586793/202303/1586793-20230316193536553-39892195.png)
## 7、项目总结
本项目是一个非常适合练手的项目,对我们的python编程技术结合pyqt5模块运用开发界面的提升有很大的帮助,推荐大家学习研究这个项目,搞懂其中的业务逻辑流程以及各个知识点非常关键。
*项目资料截图:*
![](https://img2023.cnblogs.com/blog/1586793/202303/1586793-20230316193550947-134581692.png)
资料获取地址:https://h5.m.taobao.com/awp/core/detail.htm?ft=t&id=692912597391
B站视频讲解地址:https://www.bilibili.com/video/BV1cY4y1d7cD/
注:其他问题请参看视频讲解,都有介绍,一定要认真看完哦!
代码编写、视频录制不易,感谢您的支持,祝您学习愉快!
### 避免走丢,记得关注哦以上是关于项目实战基于Pthon+PyQt5的GUI点名程序(附完整源码)的主要内容,如果未能解决你的问题,请参考以下文章
在我的 PyQt5 GUI(非基于 Web 的应用程序)中嵌入图形(数据可视化)的最佳方式
在 PyQt5 中通过命令行调用外部程序时,有没有办法阻止 GUI 冻结?