使用python和pyqt开发的抽签小程序v1.0

ops/2024/9/23 4:29:47/

使用pythonpyqt开发的抽签小程序v1.0

  • 作用
  • 效果
  • 代码

作用

  1. 对输入框中的文本进行随机抽取,抽取数量为3行。

效果

在这里插入图片描述
在这里插入图片描述

代码

python">import sys
import random
from PyQt5.QtWidgets import QApplication, QWidget, QVBoxLayout, QTextEdit, QPushButton, QMessageBoxclass RandomPicker(QWidget):def __init__(self):super().__init__()self.initUI()def initUI(self):# 创建布局layout = QVBoxLayout()self.setWindowTitle("抽签小程序")# 创建第一个文本框用于输入选项self.input_text_edit = QTextEdit(self)self.input_text_edit.setPlaceholderText("请输入选项,每行一个")layout.addWidget(self.input_text_edit)# 创建抽签按钮self.draw_button = QPushButton('抽签', self)self.draw_button.clicked.connect(self.draw_random)layout.addWidget(self.draw_button)# 创建第二个文本框用于显示结果self.output_text_edit = QTextEdit(self)self.output_text_edit.setReadOnly(True)  # 设置为只读layout.addWidget(self.output_text_edit)# 设置窗口的布局self.setLayout(layout)# 设置窗口的标题和大小self.setWindowTitle('随机抽签程序')self.setGeometry(300, 300, 800, 600)self.show()def draw_random(self):# 获取输入文本框中的文本,并按行分割成选项列表options = self.input_text_edit.toPlainText().strip().split('\n')if not options:QMessageBox.warning(self, '警告', '请输入至少一个选项!')return# 从选项中随机选择三个不重复的结果try:drawn_options = random.sample(options, 3)except ValueError:QMessageBox.warning(self, '警告', '选项不足,无法抽取三个结果!')return# 将结果设置为第二个文本框的文本self.output_text_edit.setPlainText('\n'.join(drawn_options))if __name__ == '__main__':app = QApplication(sys.argv)ex = RandomPicker()sys.exit(app.exec_())

http://www.ppmy.cn/ops/33794.html

相关文章

Android Studio学习笔记——数据库存储

Android Studio学习笔记——数据库存储 6.1持久化技术简介6.2 文件存储将数据存储到文件中从文件中读取数据 6.3 SharedPreferences存储6.3.1 将数据存储到是SharedPreferences中6.3.2 从SharedPreferences中读取数据6.3.3 实现记住密码功能 6.4 SQLite数据库存储6.4.1 创建数据…

急速入门Prompt开发之跨国婚姻小助手

文章目录 前言MoonShot编写提示词对接模型WebUI编写完整代码 前言 整个活,同时分享技术~至于是啥活,懂得都懂,男孩子自强自尊自爱!!! 先看看实现效果吧: 那么这里的话,我们使用到的…

Linux内核深入学习 - 内核同步

目录 内核抢占 同步原语 per-CPU变量 API Per CPU 变量的应用 per CPU 变量在多文件下的用法 原子操作 API 优化和内存屏障 自旋锁 自旋锁 API 函数 读写锁 API RCU 信号量 API 1. 信号量的结构: 2. 初始化函数sema_init 3. 可中断获取信号量函数…

学习mysql相关知识记录

执行一条select语句,期间发生了什么? MySQL的执行流程: 连接器 TCP连接 查询缓存 很鸡肋被取消 解析SQL 解析器 语法分析词法分析 执行SQL 预处理器 检查是否存在将 select * 中的 * 符号,扩展为表上的所有列 优化器 优化器主要…

删除虚拟机存储策略中vSAN默认存储策略

登录vSphere Client,展开左上角设置-策略和配置文件-虚拟机存储策略,可以查看系统默认创建的虚拟机存储策略。这些存储策略由系统自动生成,其中有一部分存储策略仅用于vSAN数据存储,作为vSAN 默认存储策略以应用于,当在…

【iOS】KVO

文章目录 前言一、KVO使用1.基本使用2.context使用3.移除KVO通知的必要性4.KVO观察可变数组 二、代码调试探索1.KVO对属性观察2.中间类3.中间类的方法3.dealloc中移除观察者后,isa指向是谁,以及中间类是否会销毁?总结 三、KVO本质GNUStep窥探…

dynamic_cast 静态转换

dynamic_cast 静态转换 const_cast 常量转换 重新解释转换(reinterpret_cast) 最不安全

docker的安装以及docker-compose

什么事docker Docker是一种轻量级的容器技术,可以帮助开发者更加方便地打包、发布和管理应用程序。在Linux系统上安装Docker非常容易. 安装和使用docker 1:首先安装必须的管理工具,使用Linux 终端命令 sudo yum install -y yum-utils device-mapper-per…