利用Python编写个冷笑话生成器
作者:白露未晞me 时间:2021-05-10 15:13:20
导语
带大家写个冷笑话生成器吧,感觉蛮有意思的。
废话不多说,让我们愉快地开始吧~
开发工具
Python版本:3.7.8
相关模块:
pyqt5模块;
以及一些python自带的模块。
环境搭建
安装Python并添加到环境变量,pip安装需要的相关模块即可。
原理简介
原理其实很简单,先去网上找点冷笑话:
然后把要讽刺的事情、事情的提出人、提出者声称这件事有助于、事件的受害者和事件发生的组织挖掉,根据用户输入自动填写就行了:
template = random.choice(templates)
template = template.replace('{event}', self.edit_1.text()).replace('{boss}', self.edit_2.text()).replace('{target}', self.edit_3.text()).replace('{victim}', self.edit_4.text()).replace('{org}', self.edit_5.text())
然后写个简单的pyqt界面把这个功能整合上去:
# 定义一些必要的组件
grid = QGridLayout()
# --标签
label_1 = QLabel('要讽刺的事情:')
label_2 = QLabel('事情的提出人:')
label_3 = QLabel('提出者声称这件事有助于:')
label_4 = QLabel('事件的受害者:')
label_5 = QLabel('事件发生的组织:')
# --输入框
self.edit_1 = QLineEdit()
self.edit_1.setText('****配送优先级高于生活必需品')
self.edit_2 = QLineEdit()
self.edit_2.setText('内容违规无法显示')
self.edit_3 = QLineEdit()
self.edit_3.setText('代替其他生活必需品')
self.edit_4 = QLineEdit()
self.edit_4.setText('你猜是哪个倒霉鬼')
self.edit_5 = QLineEdit()
self.edit_5.setText('****')
# --生成按钮
button = QPushButton('生成冷笑话')
# --结果显示框
self.text_edit = QTextEdit()
并且手动布局一下:
# 组件布局
grid.addWidget(label_1, 0, 0, 1, 1)
grid.addWidget(self.edit_1, 0, 1, 1, 1)
grid.addWidget(label_2, 1, 0, 1, 1)
grid.addWidget(self.edit_2, 1, 1, 1, 1)
grid.addWidget(label_3, 2, 0, 1, 1)
grid.addWidget(self.edit_3, 2, 1, 1, 1)
grid.addWidget(label_4, 3, 0, 1, 1)
grid.addWidget(self.edit_4, 3, 1, 1, 1)
grid.addWidget(label_5, 4, 0, 1, 1)
grid.addWidget(self.edit_5, 4, 1, 1, 1)
grid.addWidget(button, 5, 0, 1, 2)
grid.addWidget(self.text_edit, 6, 0, 5, 2)
self.setLayout(grid)
于是就大功告成啦:
效果展示
首先安装最新版本的pikachupytools:
pip install pikachupytools --upgrade
然后写如下代码调用即可运行:
from pytools import pytools
tool_client = pytools.pytools()
tool_client.execute('sovietgenerator')
效果如下:
源码地址
来源:https://mp.weixin.qq.com/s/PUTJxDLpCVRSaUzvarizEQ
标签:Python,冷笑话生成器
0
投稿
猜你喜欢
在Python的Flask中使用WTForms表单框架的基础教程
2023-05-10 05:20:08
Python人脸检测实战之疲劳检测
2021-02-23 16:31:37
关于多元线性回归分析——Python&SPSS
2023-03-11 17:03:34
OpenCV实现去除背景识别的方法总结
2021-01-06 23:04:10
Python虚拟环境的创建和使用详解
2022-09-14 18:05:26
Python+Opencv实现数字识别的示例代码
2021-03-10 14:16:38
Python中如何导入类示例详解
2023-05-09 08:35:58
Python Pandas实现DataFrame合并的图文教程
2023-02-01 17:02:48
Python数据结构栈实现进制转换简单示例
2022-10-21 13:48:21
Django使用paginator插件实现翻页功能的实例
2023-09-06 05:23:19
模拟兼容性的 addDOMLoadEvent 事件
2009-07-31 12:37:00
Python中用max()方法求最大值的介绍
2021-12-08 09:33:06
python随机模块random使用方法详解
2022-07-02 04:31:10
Python算法之栈(stack)的实现
2022-09-01 15:26:15
Python PyQt5-图形界面的美化操作
2023-11-08 23:04:34
django实现分页的方法
2023-07-04 02:57:44
PyQt5+Pycharm安装和配置图文教程详解
2022-12-20 08:50:26
ASP中双引号单引号和&连接符使用技巧
2007-10-01 18:20:00
Python matplotlib图例放在外侧保存时显示不完整问题解决
2023-10-08 14:05:35
python脚本替换指定行实现步骤
2022-03-18 16:53:28