新闻动态

中秋节老家要贴对联之python无线对联生成器

发布日期:2022-01-02 07:05 | 文章来源:脚本之家

导语

​​

时逢中秋佳节,古人吟诗对唱、把酒言欢的日子, 佳节加上对联,那就是相得益彰。

普天同庆、花好月圆庆中秋,中秋将至,为营造温馨、和谐的节日氛围

小编以对对联的形式,表达了对节日的祝福

都有哪些对联呢?让我们一睹为快吧~

正文

环境安装:

Python3.6、Pycharm、requests模块、界面是基于PyQt5。​

​​

首先设置对联生成器的界面小标题等。

class CoupletGenerator(QWidget):
 def __init__(self, parent=None, **kwargs):
  super(CoupletGenerator, self).__init__(parent)
 
  self.setWindowTitle('对联生成器')
  self.setWindowIcon(QIcon('data/icon.jpg'))
  self.setFixedSize(600, 400)

如下:

​然后设置好相应的按钮组件、布局。

 self.label_title = QLabel('对联主题:')
  self.line_title = QLineEdit('中秋佳节')
  self.generate_btn = QPushButton('生成')
  self.label_result = QLabel('生成结果:')
  self.text_couple = QTextEdit()
 
  grid = QGridLayout()
  grid.addWidget(self.label_title, 1, 0)
  grid.addWidget(self.line_title, 1, 1, 1, 39)
  grid.addWidget(self.generate_btn, 1, 40)
  grid.addWidget(self.label_result, 2, 0)
  grid.addWidget(self.text_couple, 2, 1, 1, 40)
  self.setLayout(grid)

最后生成对联为横批、上联、下联。

  def generate(self):
  if not self.line_title.text().strip():
return
  url = f'https://aip.baidubce.com/rpc/2.0/nlp/v1/couplets?access_token={self.access_token}'
  headers = {
'Content-Type': 'application/json'
  }
  all_couplets = []
  index_ranges = [(0, 2), (3, 5), (6, 8), (9, 11), (12, 14)]
  for idx in range(5):
params = {
 'text': self.line_title.text(),
 'index': random.randint(*index_ranges[idx]),
}
response = requests.post(url, headers=headers, json=params)
response_json = response.json()
center = response_json['couplets']['center']
first = response_json['couplets']['first']
second = response_json['couplets']['second']
text = f'横批: {center}\n上联: {first}\n下联: {second}'
all_couplets.append(text)
  self.text_couple.setText('\n\n\n'.join(all_couplets))

效果如下:​

总结

好啦!门前的对联知道贴什么了吧?

到此这篇关于中秋节老家要贴对联之python无线对联生成器的文章就介绍到这了,更多相关python 对联生成内容请搜索本站以前的文章或继续浏览下面的相关文章希望大家以后多多支持本站!

版权声明:本站文章来源标注为YINGSOO的内容版权均为本站所有,欢迎引用、转载,请保持原文完整并注明来源及原文链接。禁止复制或仿造本网站,禁止在非www.yingsoo.com所属的服务器上建立镜像,否则将依法追究法律责任。本站部分内容来源于网友推荐、互联网收集整理而来,仅供学习参考,不代表本站立场,如有内容涉嫌侵权,请联系alex-e#qq.com处理。

相关文章

实时开通

自选配置、实时开通

免备案

全球线路精选!

全天候客户服务

7x24全年不间断在线

专属顾问服务

1对1客户咨询顾问

在线
客服

在线客服:7*24小时在线

客服
热线

400-630-3752
7*24小时客服服务热线

关注
微信

关注官方微信
顶部