自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(211)
  • 资源 (10)
  • 问答 (2)
  • 收藏
  • 关注

原创 windows系统下定时备份数据到远程ftp

最新的web网站老是被开发改出问题,为了能及时恢复,每天要备份下文件,写个批处理加入计划任务,批处理如下@echo offecho 开始更新数据......rem 格式化日期 rem date出来的日期是"2006-02-22 星期三",不能直接拿来使用,所以应该先格式化一下 rem 变成我们想要的。date:~0,4的意思是从0开始截取4个字符 set d=%date:~

2016-10-12 11:12:00 3759

原创 redis下高并发投票设计

最近闲来无事,研究了下redis,看过书籍之后,为了理解的更透彻,就实践写一个例子。先说写投票吧,具体的流程是用户可以发起投票,发起成功后,其他用户可以投票,首页显示话题标题,票数和时间等信息。我使用的redis设计了五个个表一个是文章表,保存话题的相关信息,一个评分表,一个话题被投票评分就增加,一个是时间表,用来后期按时间对话题进行排序,一个是投票表,用的是单ip限制,一个ip一天只能投

2016-10-11 11:06:36 6129

原创 yolov8下的训练指标解析

11:device: 训练运行的设备,默认为None.如果使用GpU训练,可以设定为device=0,使用多个GPU可以设置为device=0,1,2,3,如果没有可用的GPU,可以设定为device=cpu进行训练。box_loss:目标检测任务中的边界框损失,表示模型预测的边界框和真实边界框之间的差异,损失越小,表示模型越能精确的定位物体,通常在0和10之间。cls_loss:目标检测中的分类损失,表示模型预测的物体类别和真实类别之间的差异,损失越小,表示模型越能正确识别物体,通常在0和10之间。

2024-04-23 17:53:04 26

原创 yolov8训练自己数据集报错解决汇总

解决:我们把训练的数据集图片增加到100张以上,重新进行训练,然后进行预测,发现可以识别到物品。这里我们使用了20张图片进行训练,数量太少,模型没有训练的模型不能识别到物品。解决办法:可通过更改ananconda的权限解决,操作如下。2:找到anaconda3的安装目录设置python的权限。解决:这里提示训练的标记数据没找到,我们的目录是这样的。进入Users的权限,将除了特殊权限外,全部挂上√。我这个是这个目录,设置权限,users设置所有权限。1:找到环境所在目录。

2024-04-23 11:49:12 38

原创 yolov8下实现绿萝识别

savetext += "{0} {1} {2} {3} {4}".format(classes_dict[class_], site[0], site[1], site[2], site[3]) # 按格式拼接内容。classes_dict[class_] = len(classes) - 1 # 同时,为此类别标记序号,即第几个类别,从0开始标号。save_txt(labels_p + "/" + name + ".txt", savetext.strip()) # 保存标签文件。

2024-04-22 09:02:39 243

原创 怎么使用yolov8进行图片识别,分类,分割,视频追踪

Ultralytics公司在YOLO之前版本基础上提出了v8版本。这个版本对AI视觉处理有了很大进步,它不但可以做检测,还可以做分类、分割、跟踪,甚至姿态估计。下面我们重点讲解下,使用官方自带的模型进行图片的分类,分割,跟踪等。使用yolo8进行图片处理时,可以使用命令行,也可以借助程序处理,这样拿到数据以后可以方面后续的数据操作。在下面的例子中我们都演示使用程序例子来处理图片。我们以包含电视,桌子,沙发,屏幕等物品的图片为例子来进行处理。通过以上的例子我们可以对模型库已存在的物品进行识别,分类,分割等。

2024-04-22 09:01:27 238

原创 windows下安装yolov8环境(详细图文教程)

最近看了 YOLO 的发展史,发现在机器视觉领域的应用非常广泛,f刚好最近一直在做机器视觉的工作,特此记录下搭建yolov的环境。我们使用的版本是yolov8的就用这个作为演示搭建过程。我们可以把依赖包定义在requirements.txt中,进行批量安装,这样就不用一个一个安装。yolov8的模型训练和使用依赖于pytorch,这个安装时间会比较长。4:安装ultralytics。安装完我们可以在命令行训练模型。直接git clone。3:安装pytorch。二:安装yolov8。

2024-04-11 15:56:32 177

原创 windows下pycharm中配置conda虚拟环境

通过以上以上步骤,我们建立了yolon9虚拟环境,通过命令行的模式安装了opencv-python,但是安装完发现在pycharm的名利命令行终端中执行python脚本提示ModuleNotFoundError: No module named 'cv2',明明已经安装了,为何提示命令找不到呢?3:这里要说明的是conda里的虚拟环境和pycharm的解释器路径需要匹配使用,才可以看到安装的库文件。选择解释器的路径,为刚才创建的环境,软件会自动配置。配置完的环境如下,默认会安装一些包。

2024-04-11 14:16:42 313

原创 opencv对图片更换背景图(底色)

现实工作中,有时需要更换照片的底色,例如证件照,有需要蓝底的,也有需要红底的。if erode[i, j] == 255: # 像素点为255表示的是白色,此处将白色处的像素点替换为红色。if erode[i, j] == 255: # 像素点为255表示的是白色,此处将白色处的像素点替换为红色。2:压缩后的图像需要转为hsv灰度图片,然后将蓝色范围的像素全部变成红色;3:对白色区域进行腐蚀和膨胀操作,主要是去除毛刺和细小的东西;4:循环操作原图,对白色的区域替换为红色。#循环替换白色像素为红色。

2024-04-10 11:43:46 170

原创 thinkphp6中使用监听事件和事件订阅

在项目开发中有很多这样的场景,比如用户注册完了,需要通知到第三方或者发送消息。用户下单了,需要提示给客服等等。这些场景都有一个共同的特点是主流程和通知流程可以完全分离。通知流程是成功和失败不能影响到主流程。那么在thinkphp6中怎么实现这样的逻辑呢?可以使用事件订阅和事件监听。

2024-04-08 11:55:06 781

原创 深入了解go的通道类型

1:通道类型的值本身就是并发安全;2:通道是一种引用类型,空值是nil;3: 通道使用之前要先声明和初始化;

2024-04-06 17:15:39 703

原创 go中的常用的关键字

上一节中,我们重点介绍了go语言中的for关键字的使用以及重点注意的地方,这一节我们用一篇文章,介绍下常用的关键字以及注意事项。

2024-04-04 17:54:10 580

原创 go的for循环应该这么用

go中的循环有for和for range两种循环结构,for循环结构//Condition;在一个for循环代码块中,InitSimpleStatement(初始化语句)和PostSimpleStatement(步尾语句)两个部分必须均为简单语句,并且PostSimpleStatement不能为一个变量短声明语句。Condition必须为一个结果为布尔值的表达式(它被称为条件表达式)。所有这三个刚提到的部分都是可选的。和很多其它流行语言不同,在Go中上述三部分不能用小括号括在一起。

2024-03-25 11:51:47 537

原创 项目使用kkFileView预览问题

这个流程是文件的文件地址拼上预览服务器地址,app访问的过程中,首先访问预览服务器,预览服务器会解析fullfilename作为文件名,解析拼接的文件地址访问,下载文件到预览服务器,然后返回预览信息给app。这里预览服务器解析我们的文件地址应该是url_decode和base64_decode,那应该是文件地址编码过程中出现了特殊字符,造成解码过程出现问题,因此可能是我们原始文件地址有特殊字符或者在编码过程中会出现特殊字符。这个插件的预览很简单,只需要部署服务使用预览服务地址拼接自己的真实图片地址即可。

2024-03-23 15:58:30 1023

原创 go文件操作看这一篇就够了

user := []User{{"小刘", "技术部", []string{"营销管理", "客服管理"}}, {"小王", "品牌部", []string{"品牌管理", "营销管理"}}}user := User{"小刘", "技术部", []string{"营销管理", "客服管理"}}fmt.Println("文件打开失败", err.Error())fmt.Println("文件打开失败", err.Error())fmt.Println("编码失败", err.Error())

2024-03-20 14:10:07 917

原创 go的数据类型看这一篇就够了

map 是一种特殊的数据结构,一种元素对(pair)的无序集合,pair 对应一个 key(索引)和一个 value(值),所以这个结构也称为关联数组或字典,这是一种能够快速寻找值的理想结构,给定 key,就可以迅速找到对应的 value。数组是一个由固定长度的特定类型元素组成的序列,一个数组可以由零个或多个元素组成。通道像一个传送带或者队列,总是遵循先入先出(First In First Out)的规则,保证收发数据的顺序。结构体是由零个或多个任意类型的值聚合成的实体,每个值都可以称为结构体的成员。

2024-03-11 16:54:36 553

原创 PySide6实现证件照制作程序

要实现证件照制作,需要一个应用窗口,窗口里需要一个选择图片的按钮,选择图片需要展示图片在预览区。file_name, _ = QFileDialog.getOpenFileName(self, "选择图片", "", "Image Files (*.png *.jpg *.jpeg *.bmp)",file_name, _ = QFileDialog.getOpenFileName(self, "选择图片", "", "Image Files (*.png *.jpg *.jpeg *.bmp)",

2024-03-08 16:42:47 42

原创 PySide6实现按键精灵程序

在主窗口开始增加开始记录,结束记录和按键展示区,点击开始记录,调用事件过滤器,记录键盘按键内容到文本文件。print(f"无法打开文件 {self.filename} 进行写入")print(f"无法打开文件 {self.filename} 进行写入")print(f"无法打开文件 {self.filename} 进行写入")self.label.setText(f'按键: {key}')self.label.setText(f'按键: {key}')# 创建 QTextStream 对象用于写入文本。

2024-03-07 17:15:25 72

原创 PySide6进行账单表报统计程序

title_list = {'吃饭':20,'出行': 30,'缴费': 20,'服饰': 5,'娱乐': 25}# 创建条形图序列series【series只与QChart有关,而与待展示数据的种类无关,因此只需创建一个】# 未来将不支持的方法:chart.setAxisX(axis_x, bar_series)slice_go_out = QPieSlice('出行', 300)bar_set_expense = QBarSet('支出')bar_set_income = QBarSet('收入')

2024-03-06 15:39:39 124

原创 PyQt5实现学生管理系统(附完整代码)

self.right_folder_student_search_button = QtWidgets.QPushButton(qtawesome.icon('fa.user-circle', color='balck'), "查询")self.left_s_course_search_button = QtWidgets.QPushButton(qtawesome.icon('fa.line-chart', color='white'), "学生课程")

2024-03-06 13:51:51 675 2

原创 PySide6实现socket通信程序

self.logTextEdit.append("服务器: {}".format(line))self.logTextEdit.append("服务器: {}".format(line))self.gotMessage.emit("收到消息: {}".format(line))self.logTextEdit.append("客户端: {}".format(msg))self.logTextEdit.append("客户端: {}".format(msg))# 创建 QTcpServer 对象。

2024-03-05 11:40:52 201

原创 PySide6实现页面导航布局

QFormLayout:表单布局管理器,通常用于创建类似HTML表单的布局,包含标签和输入字段。layout.addWidget(button1, 0, 0) # 行0, 列0。layout.addWidget(button2, 0, 1) # 行0, 列1。layout.addWidget(button3, 1, 0) # 行1, 列0。layout.addWidget(button4, 1, 1) # 行1, 列1。QGridLayout:网格布局管理器,将子控件放置在一个二维的网格中。

2024-03-05 10:06:20 101

原创 PySide6实现上传附件带进度条

PySide6中实现文件上传功能并附带一个进度条,你可以使用QFileDialog来选择文件,然后使用QNetworkAccessManager来上传文件,并通过QNetworkReply对象来追踪上传的进度。url = QUrl('http://example.com/upload') # 替换为你的上传URL。url = QUrl('http://example.com/upload') # 替换为你的上传URL。# 连接信号以追踪上传进度。# 打开文件对话框选择文件。# 打开文件对话框选择文件。

2024-03-04 17:42:34 67

原创 PySide6实现注册,登录流程

self.username_label = QLabel("用户名:")self.username_label = QLabel("用户名:")self.username_label = QLabel("用户名:")self.password_label = QLabel("密码:")self.password_label = QLabel("密码:")self.password_label = QLabel("密码:")self.password_label = QLabel("密码:")

2024-03-04 16:30:35 235

原创 PySide6实现word转化pdf

self.file_display.setText("选择文件:")self.file_display.setText("选择文件:")self.file_display.append("转换完成:")self.file_display.append("转换完成:")self.button = QPushButton("选择文件", self)self.button = QPushButton("选择文件", self)self.save_button = QPushButton("转化")

2024-03-01 16:38:21 492

原创 PySide6实现超市商品结算程序

self.products_list = {"苹果": 1, "香蕉": 2, "橙子": 1, "牛奶": 7, "面包": 1,self.products_list = {"苹果": 1, "香蕉": 2, "橙子": 1, "牛奶": 7, "面包": 1,"鸡蛋": 3, "火腿": 5, "可乐": 2, "薯片": 7, "洗发水": 15}"鸡蛋": 3, "火腿": 5, "可乐": 2, "薯片": 7, "洗发水": 15}self.priceLabel = QLabel("单价:")

2024-03-01 10:59:46 394

原创 PySide6实现备忘录程序

要创建一个具有左右布局的备忘录应用界面,其中左侧是备忘录列表,右侧是输入框和添加,保存按钮,以使用QSplitter来分割窗口,并使用QVBoxLayout和QHBoxLayout来组织右侧的部件。在右侧输入框填写备忘内容,点击添加按钮,保存内容到左侧备忘录列表中,再次添加,换行保存。self.memo_input.setFixedSize(200, 100) # 设置 QTextEdit 的固定大小为 400x200 像素。self.save_button = QPushButton('保存备忘录')

2024-02-29 15:34:34 117

原创 PySide6实现简易计算器

然后,我们创建了一个网格布局(QGridLayout)来放置按钮,并为每个按钮定义了文本和在网格中的位置。在initUI方法中,我们设置了窗口的标题和大小,并创建了一个垂直布局(QVBoxLayout)作为主布局。如果是等号按钮,我们尝试计算显示区域中的表达式并将其结果显示在显示区域中。如果是其他按钮,我们简单地将按钮的文本追加到显示区域的文本中。布局中包含一些数字按钮、运算符按钮和一个等号按钮,以及一个显示区域来展示输入和结果。self.display.setText("错误")# 创建按钮网格布局。

2024-02-29 10:44:19 273

原创 PySide6实现抽奖程序

当点击停止按钮时,我们停止定时器并启用开始按钮、禁用停止按钮。self.prizes = ["奖品A", "奖品B", "奖品C", "奖品D", "奖品E"] # 奖品列表。self.prizes = ["奖品A", "奖品B", "奖品C", "奖品D", "奖品E"] # 奖品列表。self.people = ["张三", "李四", "王五", "赵六", "孙七"] # 人员列表。self.people = ["张三", "李四", "王五", "赵六", "孙七"] # 人员列表。

2024-02-28 21:12:34 144

原创 PySide6实现课堂点名程序

新建一个窗口,展在窗口界面添加开始和停止按钮的QPushButton,和展示正在显示的人名QLabel,点击开始时随机显示人名列表中的一个名字并且展示在QLabel中,点击停止时停止获取人名。self.names = ["张三", "李四", "王五", "赵六", "孙七"] # 人名列表。self.names = ["张三", "李四", "王五", "赵六", "孙七"] # 人名列表。self.label.setText(f"正在点名: {self.current_name}")

2024-02-28 17:18:17 35

原创 python opencv实现图片清晰度增强

直方图均衡化:直方图均衡化是一种增强图像对比度的方法,特别是当图像的有用数据的对比度接近背景的对比度时。OpenCV中的cv2.equalizeHist()函数可以实现直方图均衡化。

2024-02-27 17:10:17 944

原创 python opencv鼠标操作图片

鼠标操作函数:你可以使用 cv2.setMouseCallback() 函数来为一个特定的窗口设置一个鼠标事件回调函数。这样,每当鼠标在该窗口上执行某种动作(如移动、点击、双击等)时,该回调函数就会被调用,并且会传递一些参数,包括事件类型、鼠标位置等。cv2.EVENT_MOUSEWHEEL 是 OpenCV 中的一个事件标识符,用于标识鼠标滚轮事件。当你在一个由 OpenCV 创建的窗口中滚动鼠标滚轮时,该事件会被触发。

2024-02-26 17:22:13 332

原创 python opencv识别身份证的文字信息

aa = cv2.drawContours(img, [box], -1, (0, 255, 0), 3) # 找出车牌的位置。1:图片处理,对图片进行灰度,二值化,膨胀和腐蚀便于以后轮廓处理。2: 循环处理轮廓,刨除不符合的轮廓信息,留下文字相关的信息;# 2. 形态学变换的预处理,得到可以查找矩形的图片。2:获取轮廓信息,循环处理得到处理好的轮廓,便于ocr识别。1:处理身份证图片,获取文字相关的轮廓信息,并且提取;# 找到最小的矩形,该矩形可能有方向。# 筛选那些太细的矩形,留下扁的。

2024-02-24 10:44:08 329

原创 python opencv实现身份证号码识别

templateImg = cv2.imread("D://test_python/open_cv/sf.jpeg") # template.jpg 即为模板文件,上面那张0-9数字图片。num = np.argmax(scores) # np.argmax():获取array的某一个维度中数值最大的那个元素的索引,索引即为对应数字。pidArea.append((x, y, w, h)) # 身份证号区域长宽比比较明显,算是一个比较明显的特征。# 先黑帽处理,移除干扰项,再二值化处理(自动阈值)

2024-02-23 15:36:51 528

原创 python opencv绘制图像轮廓

然后,你使用Canny边缘检测算法来检测图像中的边缘,并基于这些边缘找到轮廓。接着,你遍历每个轮廓,并为每个轮廓计算凸包(convex hull),最后将凸包绘制在原始图像上。在这段代码中,你使用OpenCV库读取了一个灰度图像,然后对该图像进行了二值化处理。接下来,你计算了二值化图像的矩特征,并使用这些矩特征计算了Hu矩。查找边缘检测后的图像中的轮廓。使用OpenCV库来读取一张图像,将其转换为灰度图像,然后进行边缘检测,查找轮廓,并在原始图像上绘制这些轮廓。在图像上绘制最小外接圆的轮廓。

2024-02-22 15:44:44 228

原创 python opencv实现车牌识别

aa = cv2.drawContours(value2, [box], -1, (0, 255, 0), 3) # 找出车牌的位置。ret, thresh = cv2.threshold(gray, 127, 255, cv2.THRESH_BINARY) # 图像二值化。img_edge2 = cv2.morphologyEx(img_edge1, cv2.MORPH_OPEN, kernel1) # 开运算。1:对车牌进行HSV颜色空间转化,便于更好的进行颜色分隔和轮廓检测,找到蓝色车牌区域。

2024-02-22 11:04:56 640

原创 python opencv图像模糊

在OpenCV中,模糊图片或进行图像平滑处理时常用的方法包括以下几种:均值滤波 (Blurring): 均值滤波是一种简单的平滑方法,它通过对图像中每个像素的邻域内像素值进行平均来计算新的像素值。在OpenCV中,可以使用cv2.blur()或cv2.boxFilter()函数来实现均值滤波。这种方法对于去除图像中的随机噪声是有效的,但可能会导致图像变得稍微模糊。

2024-02-21 14:32:03 536

原创 python opencv比较图片相似度

三直方图算法(Three-Channel Histogram)通常指的是对图像的三个颜色通道(红色、绿色、蓝色)分别计算直方图,并通过比较这些直方图来评估图像的相似度。在OpenCV中,如果你想比较两幅图像的相似度,并且只关心单通道(例如灰度图像)的直方图相似度,你可以计算每幅图像的灰度直方图,并使用直方图比较的方法(如交叉相关、卡方距离、相关性等)来确定相似度。它首先将图像转化为灰度图像,然后计算图像的均值,接着将每个像素的灰度值与均值进行比较,生成一个64位的哈希值。# 计算HSV图像的直方图。

2024-02-21 10:13:17 900

原创 python Opencv 中绘制图

在Python的OpenCV库中,可以使用cv2.line(), cv2.circle(), cv2.rectangle(), cv2.ellipse(), cv2.putText()等函数来在图像上绘制图形。

2024-02-20 15:58:07 720

原创 python opencv学习路线

了解OpenCV的模块组成,掌握每个模块的核心功能。OpenCV包含了许多模块,如图像处理、特征检测、视频分析等。整理每个模块的核心功能,并完成第一个 OpenCV 案例,读取显示图片。

2024-02-20 15:05:33 456

PySide6实现word转化pdf

在现代办公环境中,文件格式的转换是一项常见且重要的任务。特别是将Word文档转换为PDF格式,因为PDF文件具有更好的可读性和跨平台兼容性。为了满足这一需求,我们可以使用PySide6,这是一个功能强大的跨平台桌面应用开发框架,结合docx2pdf库来实现Word到PDF的转换。 使用PySide6,我们可以创建一个直观的图形用户界面(GUI),让用户可以轻松选择要转换的Word文件,并触发转换过程。转换后的PDF文件将保存在指定位置,用户可以在GUI中查看转换结果。整个过程无需复杂的编程知识,只需简单的拖放和点击操作,即可完成文件格式转换。 这个解决方案的优势在于其易用性和高效性。对于不熟悉编程的用户来说,通过直观的图形界面进行操作,无需编写复杂的代码。同时,转换过程快速且稳定,能够满足日常办公中的文件转换需求。 总之,使用PySide6结合docx2pdf库实现Word转PDF功能,是一种简单、高效且易于推广的桌面应用解决方案。无论是个人用户还是企业用户,都可以通过这一工具轻松完成文件格式转换,提高工作效率。

2024-03-01

PySide6实现超市商品结算程序

超市商品结算程序是一个使用PySide6框架开发的图形用户界面应用程序,旨在提供一个简易而高效的收银结算系统。该程序通过创建商品列表和购物车列表,实现了商品的展示、添加到购物车以及结算等功能。用户可以通过界面选择商品,并将其添加到购物车中,程序会自动计算商品的数量、单价和总价,并在结算时显示总金额,以便用户进行支付。 该程序采用了PySide6的Qt Widgets模块,利用QListWidget、QPushButton等控件构建了直观的用户界面。同时,通过事件处理函数实现了按钮点击事件的响应,使得程序能够根据用户的操作进行相应的功能执行。 超市商品结算程序的特点是界面简洁明了,操作便捷,适合超市、便利店等零售场所使用。它能够快速处理商品结算,提高收银效率,减少人工错误,提升顾客购物体验。此外,该程序还具备良好的可定制性和扩展性,可以根据实际需求进行定制开发,满足不同超市的特定需求。 通过使用PySide6开发超市商品结算程序,可以为超市带来便利和效率,提高收银速度和准确性,为顾客提供更好的购物体验。该程序在百货商店、连锁超市等零售行业具有广泛的应用前景,有助于提高企业的竞争力和

2024-03-01

PySide6实现的备忘录程序

使用PySide6实现备忘录程序,您可以轻松创建一个功能齐全、界面美观的桌面应用程序。备忘录程序可以帮助您记录和管理待办事项、重要事件和提醒,使您的工作和生活更加有序。 在PySide6中,您可以利用QWidget、QPushButton、QLineEdit和QTextEdit等控件构建备忘录程序的界面。通过连接按钮的点击信号到相应的槽函数,您可以实现添加、编辑、删除和查看备忘录等功能。 此外,您还可以利用PySide6提供的定时器功能,为备忘录设置提醒功能。通过设置定时器,在到达指定时间时触发提醒信号,从而提醒用户完成相应的任务或活动。

2024-02-29

PySide6实现的课堂点名程序

使用PySide6实现课堂点名程序,您可以为学生和教师创建一个交互性强、功能丰富的点名应用程序。该程序能够随机选择学生名字,帮助教师在课堂上进行点名互动,增加课堂的趣味性,同时也方便教师管理课堂秩序。 在PySide6中,您可以利用QMainWindow、QPushButton、QListWidget和QLabel等控件来构建课堂点名程序的界面。通过设计直观的用户界面,用户可以轻松地执行点名操作,查看被点名的学生信息,并进行其他相关操作。 为了实现随机点名功能,您可以使用PySide6中的随机数生成器来随机选择学生名单中的一个名字。您可以将学生名单存储在一个列表中,并通过编程逻辑来实现随机点名的功能。 此外,您还可以为课堂点名程序添加一些扩展功能,如记录点名历史、统计学生的点名次数等。这些功能可以帮助学生和教师更好地了解课堂互动情况,提高教学效果。 总之,使用PySide6实现课堂点名程序是一项实用而有趣的任务。通过掌握PySide6的基本控件和编程逻辑,您可以轻松地构建出一个功能丰富、交互性强的课堂点名应用程序,为教师和学生创造一个更加活跃和有趣的课堂环境。

2024-02-29

PySide6实现抽奖程序

使用PySide6实现抽奖程序,您可以创建一个具有吸引力的界面,让用户能够方便地组织和管理抽奖活动。这个程序可以在各种场合中使用,如公司活动、节日庆典或学校活动等,为参与者带来惊喜和乐趣。 在PySide6中,您可以利用QMainWindow、QPushButton、QListWidget、QLabel和QGraphicsView等控件来构建抽奖程序的界面。通过设计富有创意和用户友好的界面,您可以让用户轻松地参与抽奖,查看获奖者信息,并享受抽奖过程带来的刺激和喜悦。 为了实现抽奖功能,您可以使用PySide6中的随机数生成器来从参与者列表中随机选择一个获奖者。您可以将参与者名单存储在一个列表中,并编写相应的逻辑来处理抽奖过程。 此外,您还可以为抽奖程序添加一些扩展功能,如设置抽奖次数、限制抽奖时间、添加奖品图片和描述等。这些功能可以丰富抽奖活动的形式和内容,提高用户的参与度和体验。 总之,使用PySide6实现抽奖程序是一项既有趣又实用的任务。通过掌握PySide6的基本控件和编程逻辑,您可以轻松地创建出一个功能丰富、界面吸引人的抽奖应用程序,为用户带来愉快的抽奖体验。无论是公

2024-02-29

selenium登录cms系统自动实现用户的创建,编辑,删除

使用selenium自动登录cms系统,并且根据配置的用户数据,自动实现创建,编辑和删除用户,实现对系统的自动测试

2023-12-20

selenium登录cms系统自动添加用户信息

实现selenium自动登录cms系统,并且根据配置的用户信息自动添加用户到系统中

2023-12-19

Selenium实现登录cms系统进行自动化测试

可以登录cms系统,修改链接和账号密码可以登录不带验证码的系统,进行自动化测试

2023-12-19

python实现获取链家租房信息

python实现获取链家租房信息,能够获取租房的信息,包括‘楼盘名', '地址', '房间格式', '房间面积', '价格', '起价', '优点'等信息

2023-12-18

python多线程下载资源代码

python多线程下载资源,并且记录每个资源下载事件和总下载事件

2023-12-18

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除