tk 文本生成器

import random
import tkinter as tk
import ttkbootstrap as ttk
from tkinter import messagebox
import pyperclipdef wenben_run():def generate_text(original_text, length):# 去掉原始文本中的换行符和空格original_text = original_text.replace('\n', '')original_text = original_text.replace(' ', '')# 获取原始文本的长度original_length = len(original_text)# 如果指定的长度小于等于原始文本的长度,则直接截取原始文本if length <= original_length:start_index = random.randint(0, original_length - length)return original_text[start_index:start_index + length]# 从原始文本中随机选择字符生成指定长度的文本generated_text = ''current_length = 0while current_length < length:if current_length % 4 == 0 and current_length % 5 != 0:# 每4个单位插入其他内容other_content = generate_other_content()generated_text += other_contentcurrent_length += len(other_content)else:random_char = random.choice(original_text)generated_text += random_charcurrent_length += 1return generated_text[:length]def generate_other_content():# 生成其他内容的逻辑,可以根据需要自定义# 这里只是一个示例,可以根据实际需求进行修改other_contents = ['', 'c', 'f', 'c', 'm', '']return random.choice(other_contents)# 生成文本时先清空输入框# 清空文本框wenben_text_area2.delete(1.0, tk.END)try:# 尝试将输入框的内容转换为整数wenbenlen =  int(wenben_entry.get())print("输入的整数为:", wenbenlen)except ValueError:# 如果转换失败,显示错误提示框messagebox.showerror("错误", "输入的内容不是整数,请重新输入!")wenbentext = wenben_text_area.get("1.0", tk.END)# print(wenbenlen)# print(wenbentext)length = int(wenbenlen)original_text = wenbentext# 调用生成文本函数generated_text = generate_text(original_text, length)wenben_text_area2.insert(tk.END, generated_text)# 复制内容至剪切板pyperclip.copy(generated_text)wenben_text_area2.insert(tk.END, '\n')wenben_text_area2.insert(tk.END, '\n')wenben_text_area2.insert(tk.END, '\n---------生成文本内容已自动复制!!!')root = ttk.Window(title='文本生成器', # 窗口标题position=(750, 350),  # 窗口运行展示坐标resizable=None,  # 是否固定窗口alpha=0.94  # 虚化
)# 设置窗口大小
root.geometry("520x320")# 提示文本输入长度标签
wenben_label = ttk.Label(root, text='设置生成文本长度(如:10):')
wenben_label.grid(row=1, column=0)# 文本长度输入框
wenben_entry = ttk.Entry(root, width=40)
wenben_entry.grid(row=1, column=1, columnspan=1)# 给文本长度框默认赋值100
wenben_entry.insert(ttk.END, "100")# 生成文本按钮
wenben_button = ttk.Button(root, width=10, text="生成文本", command=wenben_run)
wenben_button.grid(row=1, column=2, columnspan=2, sticky="w")# 自定义文本提示标签
wenben_label2 = ttk.Label(root, text='自定义文本内容:')
wenben_label2.grid(row=2, column=0)# 自定义文本输入框
wenben_text_area = ttk.Text(root, height=5, width=73)
wenben_text_area.grid(row=3, columnspan=3, sticky="w")original_text = """123456789
一二三四五六七八九十
abcdefghijklnmopqrstuvwsyz
ABCDEFGHIJKLNMOPQRSTUVWSYZ!
@#$%^&*()_+<>?,.~{}|/,。"""
# 程序启动时插入默认的内容
wenben_text_area.insert(ttk.END, original_text)# 生成文本内容提示标签
wenben_label3 = ttk.Label(root, text='生成的文本内容:')
wenben_label3.grid(row=4, column=0)# 生成文本内容输入框
wenben_text_area2 = ttk.Text(root, height=8, width=73)
wenben_text_area2.grid(row=5, columnspan=3, sticky="w")# 运行主循环
root.mainloop()

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/42731.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

LLM生成的CUDA CUPTI Metrics for Capability 7.0解释

LLM生成的CUDA CUPTI Metrics for Capability 7.0解释 1.原文 2.6.1.3. Metrics for Capability 7.0 2.system_prompt 你是一位GPU专家,请详细解释用户输入GPU Metric的功能以及如何结合这个指标来优化Kernel的性能,要求专业术语用英文,其它用中文3.输出 achieved_occupanc…

提升网络包容性:探索Webkit的访问性特性

在数字化时代&#xff0c;网络的无障碍访问性&#xff08;Accessibility&#xff09;对于确保每个人都能平等地访问和使用网络内容至关重要。Webkit&#xff0c;作为多个流行浏览器的核心渲染引擎&#xff0c;提供了一系列的访问性特性&#xff0c;以支持残障用户更好地浏览网页…

Windows11配置WSL2支持代理上网

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、安装WSL2分发版二、配置步骤三、测试总结 前言 说起来本来这个功能我也不需要的&#xff0c;只是最近突然有个需求就顺便研究了下&#xff0c;WSL2默认的网…

大模型/NLP/算法面试题总结1——大语言模型有哪些//泛化能力

1、了解哪些大语言模型&#xff1f; 1. GPT系列 GPT-3&#xff1a;由OpenAI开发&#xff0c;具有1750亿个参数&#xff0c;是迄今为止最强大的自然语言处理模型之一。GPT-3能够生成连贯的文本&#xff0c;涵盖多种文体&#xff0c;如诗歌、小说、新闻报道、代码等。然而&#…

北京大学长安汽车发布毫米波与相机融合模型RCBEVDet:最快能达到每秒28帧

Abstract 三维目标检测是自动驾驶中的关键任务之一。为了在实际应用中降低成本&#xff0c;提出了利用低成本的多视角相机进行3D目标检测&#xff0c;以取代昂贵的LiDAR传感器。然而&#xff0c;仅依靠相机很难实现高精度和鲁棒性的3D目标检测。解决这一问题的有效方法是将多视…

C++入门基础(2)

目录 一、引用: 1、定义&#xff1a; 2、特性&#xff1a; 3、引用的使用&#xff1a; 4、const引用&#xff1a;控制权限 const引用定义: const引用可以接收3种对象&#xff1a; 1、正常对象&#xff1a; 2、临时对象&#xff1a; 3、const对象&#xff1a; 总结&…

C++笔试强训3

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 一、选择题1-5题6-10题 二、编程题题目一题目二 一、选择题 1-5题 如图所示&#xff0c;如图所示p-3指向的元素是6&#xff0c;printf里面的是%s&#xff0c;从6开…

Java爬虫翻页

编写一个Java爬虫以进行翻页通常涉及到使用HTTP客户端&#xff08;如Apache HttpClient或OkHttp&#xff09;来发送请求&#xff0c;解析HTML页面&#xff08;如使用Jsoup库&#xff09;&#xff0c;以及处理分页逻辑&#xff08;如通过URL参数或页面内的链接进行翻页&#xff…

华为机试HJ108求最小公倍数

华为机试HJ108求最小公倍数 题目&#xff1a; 想法&#xff1a; 要找到输入的两个数的最小公倍数&#xff0c;这个最小公倍数要大于等于其中最大的那个数值&#xff0c;遍历最大的那个数值的倍数&#xff0c;最大的最小公倍数就是输入的两个数值的乘积 input_number_list i…

C++休眠的方法

Windows的API函数 Sleep(INFINITE); 休眠时间为永久 Linux的API函数sleep 没有直接表示无限时间的参数&#xff0c;根据POSIX标准&#xff0c;sleep() 函数的参数应该是 unsigned int 类型&#xff0c;因此最大可以接受的参数值是 UINT_MAX&#xff0c;即 4294967295 秒。sleep…

OpenFWI代码

重点关注文章第4部分 一、代码模块概览 这一部分了解代码主要实现的功能有哪些。 二、运行 这一部分关注如何跑通。 三、数据集 12个数据集&#xff08;11个2D1个3D&#xff09; 对计算机而言&#xff0c;上述输入、输出维度大小是按次数定义的。 以“Vel&#xff0c;F…

线程池【开发实践】

文章目录 一、为什么要用线程池1.1 单线程的问题1.2 手动创建多线程的问题1.3 线程池的作用&#xff08;优点&#xff09;1.4 线程池的使用场景 二、线程池的基础知识2.1 线程池的核心组件2.2 JUC中的线程池架构2.3 线程池的配置参数2.4 线程池常见的拒绝策略&#xff08;可自定…

appium 实战问题 播放视频时无法定位到元素

背景 在做UI自动化时&#xff0c;有播放详情页的用例&#xff0c;但是发现视频在播放的时候无法定位到元素或者很慢&#xff0c;了解到appium在动态的页面实时获取布局元素导致定位变慢。所以只能将视频暂停在操作元素&#xff0c;点击到暂停按钮又是个问题&#xff0c;通过ad…

昇思25天学习打卡营第21天|LSTM+CRF序列标注

1. 学习内容复盘 概述 序列标注指给定输入序列&#xff0c;给序列中每个Token进行标注标签的过程。序列标注问题通常用于从文本中进行信息抽取&#xff0c;包括分词(Word Segmentation)、词性标注(Position Tagging)、命名实体识别(Named Entity Recognition, NER)等。以命名…

Spring Boot项目中JPA操作视图会改变原表吗?

一直有一种认识就是:使用JPA对视图操作,不会影响到原表。 直观的原因就是视图是一种数据库中的虚拟表,它由一个或多个表中的数据通过SQL查询组成。视图不包含数据本身,而是保存了一条SQL查询,这条查询是用来展示数据的。 但是在实际项目种的一个场景颠覆和纠正了这个认识…

汇川伺服 (4)FFT、机械特性、闭环、惯量、刚性、抑制振动

一、参数解释 二、FFT 三、机械特性分析 四、多级配方与对象字典 对机组网配方 对象字典 五、InoServoShop 主要是用于调试620P620N将压缩报解压后不需要安装就可以直接使用 六、InoDriveWorkShop 主要是调试660 670 810 520 等系列 惯量识别 Etune Stune 惯量比调试 大惯…

Error:sql: expected 1 arguments, got 2

一 背景 在测试一个API接口时&#xff0c;看到日志里面突然抛出一个错误&#xff1a;Error:sql: expected 1 arguments, got 2 看了下&#xff0c;对应的表里面是有相关数据的&#xff0c;sql语句放在mysql里面执行也是没问题&#xff01;那奇了怪了&#xff0c;为啥会产生这样…

git只列出本地分支

git只列出本地分支 git branch --list git强制删除本地分支 git branch -D_error: the branch dlx-test is not fully merged. -CSDN博客文章浏览阅读648次。git branch -d 可以通过: git branch 查看所有本地分支及其名字&#xff0c;然后删除特定分支。git删除远程remote分支…

算法之工程化内容(2)—— Git常用命令

目录 1. git初始化配置 2. 新建仓库 3. 工作区——>暂存区——>本地仓库 4. git reset回退版本 5. 查看差异 git diff 6. 删除文件git rm 7. .gitignore 8. vscode操作git 9. git分支、合并和删除 10. 解决合并冲突 11. 回退和rebase 12. 添加远程仓库 参考链接&#xff…

【Go语言】Go语言的占位符

Go语言的占位符 Golang 的字符串占位符在 fmt 包的各种打印函数中使用&#xff0c;如 fmt.Printf、fmt.Sprintf。 变量值与类型的打印 %v: 打印变量的值 %v 会根据变量的类型选择合适的格式进行打印。对于结构体&#xff0c;%v 会打印出结构体的字段。对于指针类型&#xf…