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 zip文件 压缩
Dec 24 Python
跟老齐学Python之关于循环的小伎俩
Oct 02 Python
python 容器总结整理
Apr 04 Python
由浅入深讲解python中的yield与generator
Apr 05 Python
Golang与python线程详解及简单实例
Apr 27 Python
Pycharm学习教程(5) Python快捷键相关设置
May 03 Python
Python如何快速上手? 快速掌握一门新语言的方法
Nov 14 Python
使用Anaconda3建立虚拟独立的python2.7环境方法
Jun 11 Python
python使用xlrd模块读取xlsx文件中的ip方法
Jan 11 Python
Python 列表的清空方式
Jan 13 Python
Python中包的用法及安装
Feb 11 Python
Python使用Paramiko控制liunx第三方库
May 20 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连接SQLServer2005 的问题解决方法
2010/07/19 PHP
php发送与接收流文件的方法
2015/02/11 PHP
PHP随机生成唯一HASH值自定义函数
2015/04/20 PHP
php实现微信和支付宝支付的示例代码
2020/08/11 PHP
Prototype使用指南之ajax
2007/01/10 Javascript
javascript IE中的DOM ready应用技巧
2008/07/23 Javascript
js继承 Base类的源码解析
2008/12/30 Javascript
jquery 操作表格实现代码(多种操作打包)
2011/03/20 Javascript
html文件中jquery与velocity变量中的$冲突的解决方法
2013/11/01 Javascript
iframe实用操作锦集
2014/04/22 Javascript
PHPExcel中的一些常用方法汇总
2015/01/23 Javascript
jquery马赛克拼接翻转效果代码分享
2015/08/24 Javascript
javascript每日必学之多态
2016/02/23 Javascript
jQuery设置Cookie及删除Cookie实例分析
2016/04/15 Javascript
页面get请求 中文参数方法乱码问题的快速解决方法
2016/05/31 Javascript
Vue.js快速入门教程
2016/09/07 Javascript
JS正则表达式判断有效数实例代码
2017/03/13 Javascript
vue 本地服务不能被外部IP访问的完美解决方法
2018/10/29 Javascript
ES6知识点整理之数组解构和字符串解构的应用示例
2019/04/17 Javascript
vue 解决在微信内置浏览器中调用支付宝支付的情况
2020/11/09 Javascript
[46:55]完美世界DOTA2联赛决赛 FTD vs Phoenix 第三场 11.08
2020/11/11 DOTA
pycharm安装图文教程
2017/05/02 Python
python 环境变量和import模块导入方法(详解)
2017/07/11 Python
使用python读取txt文件的内容,并删除重复的行数方法
2018/04/18 Python
python调用tcpdump抓包过滤的方法
2018/07/18 Python
解决pycharm无法识别本地site-packages的问题
2018/10/13 Python
python读写csv文件并增加行列的实例代码
2019/08/01 Python
基于matplotlib xticks用法详解
2020/04/16 Python
python文件路径操作方法总结
2020/12/21 Python
销售总监岗位职责
2014/01/04 职场文书
走进敬老院活动总结
2014/07/10 职场文书
我的未来不是梦演讲稿
2014/09/02 职场文书
2019大学生社会实践报告汇总
2019/08/16 职场文书
浅谈mysql哪些情况会导致索引失效
2021/11/20 MySQL
Kubernetes关键组件与结构组成介绍
2022/03/31 Servers
特别篇动画《总之就是非常可爱 ~制服~》PV公开,2022年夏季播出
2022/04/04 日漫