集团主站
欢迎来到成都达内官方网站!达内—美国上市公司 亿元级外企IT培训企业!
成都it培训哪家好
成都it培训哪家好
全国服务监督电话:15023458194  |   联系客服   |
当前位置:主页 > 培训课程 > Python >

成都python爬虫培训-七夕快到了,教你用python去表白!

发布者: 成都python爬虫培训     浏览次数:     发布时间:2018-07-20 11:11:45

对于如何表白俘获女神的心,你有什么高招?马上就要到来的七夕节,你准备了什么惊喜?小编为了让你七夕有人陪,也是煞费苦心,这就教你如何用python去表白,不仅浪漫,还显示出咱的...

对于如何表白俘获女神的心,你有什么高招?马上就要到来的七夕节,你准备了什么惊喜?小编为了让你七夕有人陪,也是煞费苦心,这就教你如何用python去表白,不仅浪漫,还显示出咱的智慧与潜力,快来学吧:

最近一直在被抖音视频的表白程序刷屏,之前小编也收到过一个VB编写一个表白程序 直接上代码:


# -*- coding: utf-8 -*-


import sys


from PyQt5 import QtWidgets


from PyQt5.QtGui import QFont,QIcon#QtWidgets不包含QFont必须调用QtGui


from PyQt5 import QtGui,QtCore


import random


class MessageBox(QtWidgets.QWidget):#继承自父类QtWidgets.QWidget


CloseAllowed=0


def __init__(self,parent = None):#parent = None代表此QWidget属于最上层的窗口,也就是MainWindows.


QtWidgets.QWidget.__init__(self)#因为继承关系,要对父类初始化


#通过super初始化父类,__init__()函数无self,若直接QtWidgets.QWidget.__init__(self),括号里是有self的


self.setGeometry(300, 300, 800,800) # setGeometry()方法完成两个功能--设置窗口在屏幕上的位置和设置窗口本身的大小。它的前两个参数是窗口在屏幕上的x和y坐标。后两个参数是窗口本身的宽和高


#self.resize(1000, 500) # 设置窗体大小,本行可有可无。


self.center()#自定义一个居中的函数


self.setFixedSize(self.width(),self.height());#PyQT禁止调整窗口大小和窗口最大化按钮


#self.setWindowFlags(QtCore.Qt.WindowMinimizeButtonHint)#PyQT禁止窗口最大化按钮和关闭按钮


self.setWindowTitle(u'表白神器 by Python学习群:125240963') # 仅仅设置窗体标题,不设置位置。


self.setWindowIcon(QIcon('rose.png')) # 调用QIcon构造函数时,我们需要提供要显示的图标的路径(相对或绝对路径)。同时注意:使用QIcon类型必须导入此模块from PyQt5.QtGui import QIcon


self.setToolTip(u'Python学习群:125240963获取源码')#调用setToolTip()方法,该方法接受富文本格式的参数,css之类。


QtWidgets.QToolTip.setFont(QFont('华文楷体', 10))#设置字体以及字体大小


self.label1 = QtWidgets.QLabel(u'<b>小姐姐,观察你很久了!</b>', self) # 建立一个标签


self.label1.move(150, 40) # 使此标签移动到这个部件(260,40)的位置


self.label1.setFont(QFont("Timers", 20));#设置字体与字体大小


self.label2= QtWidgets.QLabel(u'<b>做我女朋友好不好?</b>', self) # 建立一个标签


self.label2.move(150, 100) # 使此标签移动到这个部件(260,100)的位置


self.label2.setFont(QFont("Timers", 20));#设置字体与字体大小


#Qt中提供的调色板QPalette类就是专门用于管理控件的外观显示。QPalette类相当于对话框或控件的调色板,管理着控件和窗体的所有颜色。


#每个窗体和控件都包含一个QPalette对象,在显示时,对其做相应的设置即可


self.window_pale = QtGui.QPalette()#实例化QPalette类


self.window_pale.setBrush(self.backgroundRole(), QtGui.QBrush(QtGui.QPixmap("biu.jpg")))#打开图片


self.setPalette(self.window_pale)#应用背景色


# setStyleSheet来设置图形界面的外观


self.buttonOK = QtWidgets.QPushButton(u'同意',self) # 因为需要增加按钮,所以我们引入了QPushButton类,该按钮是QPushButton类的一个实例。构造函数的第一个参数是按钮的标签。第二个参数是父窗口小部件。父窗口小部件是示例窗口小部件,它是通过QWidget继承的


self.buttonOK.setFocusPolicy(QtCore.Qt.NoFocus)#按钮无焦点


# Qt::TabFocus 0x1 接受Tab键焦点


# Qt::ClickFocus 0x2 接受鼠标单击做焦点


# Qt::StrongFocus TabFocus | ClickFocus | 0x8 接受Tab键和鼠标单击做焦点


# Qt::WheelFocus StrongFocus | 0x4 滑轮作为焦点选中事件


# Qt::NoFocus 0 不接受焦点


self.buttonOK.move(50, 700) # move()方法来指定部件的放置坐标,坐标的顶点就是窗口的左上角


self.buttonOK.clicked.connect(self.showDialogOK)


self.buttonE = QtWidgets.QPushButton(u'考虑考虑',self) # 因为需要增加按钮,所以我们引入了QPushButton类,该按钮是QPushButton类的一个实例。构造函数的第一个参数是按钮的标签。第二个参数是父窗口小部件。父窗口小部件是示例窗口小部件,它是通过QWidget继承的


self.buttonE.setFocusPolicy(QtCore.Qt.NoFocus) # 按钮无焦点


# Qt::TabFocus 0x1 接受Tab键焦点


# Qt::ClickFocus 0x2 接受鼠标单击做焦点


# Qt::StrongFocus TabFocus | ClickFocus | 0x8 接受Tab键和鼠标单击做焦点


# Qt::WheelFocus StrongFocus | 0x4 滑轮作为焦点选中事件


# Qt::NoFocus 0 不接受焦点


self.buttonE.move(330, 700) # move()方法来指定部件的放置坐标,坐标的顶点就是窗口的左上角


self.buttonE.clicked.connect(self.showDialogEE)


self.buttonNO = QtWidgets.QPushButton(u'拒绝',self) # 因为需要增加按钮,所以我们引入了QPushButton类,该按钮是QPushButton类的一个实例。构造函数的第一个参数是按钮的标签。第二个参数是父窗口小部件。父窗口小部件是示例窗口小部件,它是通过QWidget继承的


self.buttonNO.setFocusPolicy(QtCore.Qt.NoFocus) # 按钮无焦点


# Qt::TabFocus 0x1 接受Tab键焦点


# Qt::ClickFocus 0x2 接受鼠标单击做焦点


# Qt::StrongFocus TabFocus | ClickFocus | 0x8 接受Tab键和鼠标单击做焦点


# Qt::WheelFocus StrongFocus | 0x4 滑轮作为焦点选中事件


# Qt::NoFocus 0 不接受焦点


self.buttonNO.move(610, 700) # move()方法来指定部件的放置坐标,坐标的顶点就是窗口的左上角


self.buttonNO.clicked.connect(self.showDialogNO)


def showDialogOK(self):


QtWidgets.QMessageBox.information(self, "欧耶", "爱你,么么么么么么么哒~~~", QtWidgets.QMessageBox.Ok)


self.CloseAllowed = 1


def showDialogEE(self):


QtWidgets.QMessageBox.information(self, "别纠结了", "你完了,你妈让你嫁给我", QtWidgets.QMessageBox.Ok)


QtWidgets.QMessageBox.information(self, "别纠结了", "你爸也是这么说的", QtWidgets.QMessageBox.Ok)


QtWidgets.QMessageBox.information(self, "别纠结了", "你奶奶也让你嫁给我", QtWidgets.QMessageBox.Ok)


QtWidgets.QMessageBox.information(self, "别纠结了", "你哥哥也同意了,你全家都同意", QtWidgets.QMessageBox.Ok)


QtWidgets.QMessageBox.information(self, "别纠结了", "你闺蜜说嫁给我没错", QtWidgets.QMessageBox.Ok)


QtWidgets.QMessageBox.information(self, "别纠结了", "你爸说不同意就打你", QtWidgets.QMessageBox.Ok)


QtWidgets.QMessageBox.information(self, "别纠结了", "接受现实吧,我会对你好的", QtWidgets.QMessageBox.Ok)


QtWidgets.QMessageBox.information(self, "别纠结了", "你都是我的人了", QtWidgets.QMessageBox.Ok)


def showDialogNO(self):


self.q = random.randint(0, 650) # 在0-650内生成随机的X坐标


self.w = random.randint(150, 650) # 在150-650内生成随机的Y坐标


self.buttonNO.move(self.q, self.w)


#enterEvent事件PyQt自动运行,无需调用


# def enterEvent(self,event):#重写了鼠标的enterEvent事件,由于继承了窗口类,鼠标一进入主窗口便会出发此函数


# self.q=random.randint(0,650)#在0-650内生成随机的X坐标


# self.w=random.randint(150,650)#在150-650内生成随机的Y坐标


# self.buttonNO.move(self.q,self.w)


#当我们关闭一个窗口时,在PyQt中就会触发一个QCloseEvent的事件,正常情况下会直接关闭这个窗口,


#但是我们不希望这样的事情发生,所以我们需要重新定义QCloseEvent,函数名称为closeEvent不可变


def closeEvent(self,event):#函数名固定不可变


if self.CloseAllowed==1:


event.accept()#关闭窗口


else:


QtWidgets.QMessageBox.information(self, "未作回应", "小姐姐,请不要逃避!", QtWidgets.QMessageBox.Ok)


event.ignore()#忽视点击X事件


def center(self):


screen=QtWidgets.QDesktopWidget().screenGeometry()#获取屏幕分辨率


#QtWidgets.QDesktopWidget().screenGeometry()中QDesktopWidget()也有括号


size=self.geometry()#获取窗口尺寸


self.move((screen.width()-size.width())/2,(screen.height()-size.height())/2)#利用move函数窗口居中


app=QtWidgets.QApplication(sys.argv)


window=MessageBox()


window.show()


sys.exit(app.exec_())


想要发给你自己喜欢的人,肯定是需要打包成exe的呀


#!/usr/bin/env python


# -*- coding: utf-8 -*-


"""


__title__ = '将calculator项目转换为exe文件'


__author__ = '遂越净郝'


"""


from PyInstaller.__main__ import run


if __name__ == '__main__':


opts = ['douyin.py', '-w', '--onefile']


#opts = ['douyin.py', '-F']


#opts = ['douyin.py', '-F', '-w']


#opts = ['douyin.py', '-F', '-w', '--icon=TargetOpinionMain.ico','--upx-dir','upx391w']


run(opts)


【免责声明】:本内容由成都python爬虫培训转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。

(责任编辑:杨老师)
最新开班
  • 成都Java培训班
    免费试听名额发放中...
  • 成都C++培训班
    免费试听名额发放中...
  • 成都PHP培训班
    免费试听名额发放中...
  • 成都网络工程培训班
    免费试听名额发放中...
  • 成都Unity3D培训班
    免费试听名额发放中...
  • 成都大数据培训班
    免费试听名额发放中...
  • 成都uid培训班
    免费试听名额发放中...
  • 成都会计培训班
    免费试听名额发放中...
  • 成都Python培训班
    免费试听名额发放中...
  • 成都嵌入式培训班
    免费试听名额发放中...
  • 成都web培训班
    免费试听名额发放中...
  • 成都软件测试培训班
    免费试听名额发放中...
在线留言
提交

校区地址:绵阳市涪城区临园路东段68号富临大都会7栋3单元9层12号

联系电话:15023458194

公交路线:富乐路口凯德广场(10路;29路;3路;15路;11路;15a路;71路)

校区地址:成都市锦江区东大街紫东楼段35号明宇金融广场19楼1903室

联系电话:15023458194

公交路线:芷泉街(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:东门大桥站(地铁2号线)

校区地址:成都市高新区奥克斯广场蜀锦路209号一楼商铺

联系电话:15023458194

公交路线:益州大道锦城大道口(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:孵化园(地铁1号线)

校区地址:成都锦江区东大街芷泉街229号东方广场C座3楼303

联系电话:15023458194

公交路线:芷泉街(188路;115路;515路;236路;505路;501路;84路 ) 地铁路线:东门大桥站(地铁2号线)

校区地址:成都市武侯区佳灵路3号红牌楼广场2号写字楼11楼1115号

联系电话:15023458194

公交路线:红牌楼东(11路;92路;100路;111路;139路;g28路;快速公交K1/K2) 地铁路线:红牌楼站(地铁3号线)

校区地址:成都市锦江区红星路二段70号四川日报大厦502-2

联系电话:15023458194

公交路线:市二医院站(6路;49路;102路;5路;37路;g92路;) 地铁路线:地铁市二医院(地铁3号线)

校区地址:成都市锦江区东大街紫东段35号明宇广场2306

联系电话:15023458194

公交路线:芷泉街(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:东门大桥站(地铁2号线)

校区地址:四川省成都市武侯区高新科技孵化园9号园区E座7楼

联系电话:15023458194

公交路线:益州大道锦城大道口(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:孵化园(地铁1号线)

校区地址:成都市成华区建设路10号万科钻石广场B座5楼

联系电话:15023458194

公交路线:建设路中(6路;14路;42路;72路;76路;1010路;)

校区地址:成都市高新区奥克斯广场B座1708

联系电话:15023458194

公交路线:益州大道锦城大道口(18路;21路;43路;48路;104路;152路;335路 ) 地铁路线:孵化园(地铁1号线)

了解达内动态
关注成都达内教育公众号

首页 | 关于达内 | 课程中心 | 专家师资 | 视频教程 | 学员空间 | 校企合作 | 新闻资讯 | 就业指导 | 网站地图

20016-2025 达内时代科技集团有限公司 版权所有 京ICP证8000853号-56