Python编写冷笑话生成器


Posted in Python onApril 20, 2022

导语

带大家写个冷笑话生成器吧,感觉蛮有意思的。

废话不多说,让我们愉快地开始吧~

开发工具

Python版本:3.7.8

相关模块:

pyqt5模块;

以及一些python自带的模块。

环境搭建

安装Python并添加到环境变量,pip安装需要的相关模块即可。

原理简介

原理其实很简单,先去网上找点冷笑话:

Python编写冷笑话生成器

然后把要讽刺的事情、事情的提出人、提出者声称这件事有助于、事件的受害者和事件发生的组织挖掉,根据用户输入自动填写就行了:

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)

于是就大功告成啦:

Python编写冷笑话生成器

效果展示

首先安装最新版本的pikachupytools:

pip install pikachupytools --upgrade

然后写如下代码调用即可运行:

from pytools import pytools

tool_client = pytools.pytools()
tool_client.execute('sovietgenerator')

效果如下:

Python编写冷笑话生成器

GIT源码地址

到此这篇关于利用Python编写个冷笑话生成器的文章就介绍到这了!

Python 相关文章推荐
分析在Python中何种情况下需要使用断言
Apr 01 Python
深入解析Python中的变量和赋值运算符
Oct 12 Python
Python使用自带的ConfigParser模块读写ini配置文件
Jun 26 Python
详解Python各大聊天系统的屏蔽脏话功能原理
Dec 01 Python
基于Python List的赋值方法
Jun 23 Python
python-itchat 获取微信群用户信息的实例
Feb 21 Python
python实现ip代理池功能示例
Jul 05 Python
Django+uni-app实现数据通信中的请求跨域的示例代码
Oct 12 Python
使用Python进行中文繁简转换的实现代码
Oct 18 Python
Python对Tornado请求与响应的数据处理
Feb 12 Python
jupyter notebook实现显示行号
Apr 13 Python
Python下载的11种姿势(小结)
Nov 18 Python
Python Django / Flask如何使用Elasticsearch
Apr 19 #Python
python中mongodb包操作数据库
Apr 19 #Python
Elasticsearch 聚合查询和排序
Apr 19 #Python
Elasticsearch 基本查询和组合查询
Apr 19 #Python
Elasticsearch 批量操作
Apr 19 #Python
Elasticsearch 数据类型及管理
Apr 19 #Python
Elasticsearch 索引操作和增删改查
Apr 19 #Python
You might like
PHP中Session的概念
2006/10/09 PHP
php之curl实现http与https请求的方法
2014/10/21 PHP
php中mysql连接方式PDO使用详解
2015/02/25 PHP
CentOS安装php v8js教程
2015/02/26 PHP
jQuery向下滚动即时加载内容实现的瀑布流效果
2016/01/07 PHP
基于jQuery的公告无限循环滚动实现代码
2012/05/11 Javascript
javascript date格式化示例
2013/09/25 Javascript
javascript面向对象之对象的深入理解
2015/01/13 Javascript
Grunt入门教程(自动任务运行器)
2015/08/06 Javascript
javascript的BOM
2016/05/03 Javascript
JS实现刷新父页面不弹出提示框的方法
2016/06/22 Javascript
JavaScript中原型链存在的问题解析
2016/09/25 Javascript
Node.js读取文件内容示例
2017/03/07 Javascript
JavaScript中this的用法及this在不同应用场景的作用解析
2017/04/13 Javascript
BootStrap表单验证 FormValidation 调整反馈图标位置的实例代码
2017/05/17 Javascript
Vue cli 引入第三方JS和CSS的常用方法分享
2018/01/20 Javascript
Koa2 之文件上传下载的示例代码
2018/03/29 Javascript
axios全局注册,设置token,以及全局设置url请求网段的方法
2018/09/25 Javascript
你可能从未使用过的11+个JavaScript特性(小结)
2020/01/08 Javascript
Python中实现从目录中过滤出指定文件类型的文件
2015/02/02 Python
Python发送以整个文件夹的内容为附件的邮件的教程
2015/05/06 Python
python 表达式和语句及for、while循环练习实例
2017/07/07 Python
AI人工智能 Python实现人机对话
2017/11/13 Python
python实现控制COM口的示例
2019/07/03 Python
python开发之anaconda以及win7下安装gensim的方法
2019/07/05 Python
在Python中等距取出一个数组其中n个数的实现方式
2019/11/27 Python
python 从list中随机取值的方法
2020/11/16 Python
Etam德国:内衣精品店
2019/08/25 全球购物
巴西葡萄酒商店:Divvino
2020/02/22 全球购物
如何设置Java的运行环境
2013/04/05 面试题
暑期社会实践心得体会
2014/09/02 职场文书
公安交警中队队长个人对照检查材料思想汇报
2014/10/05 职场文书
个人整改方案范文
2014/10/25 职场文书
2015年六一儿童节活动总结
2015/02/11 职场文书
导游词之江南周庄
2019/12/06 职场文书
Nginx限流和黑名单配置
2022/05/20 Servers