基于Python實(shí)現(xiàn)的戀愛(ài)對(duì)話小程序詳解
導(dǎo)語(yǔ)
哈嘍!大家好~我是木木子啦!自從寫了一些表白類型的一些小腳本、小程序之后,越發(fā)不可收拾了,哈哈哈。
常常會(huì)有小粉絲說(shuō):這......小程序不夠??!剛表白去了,但是被拉黑了。
那我不答應(yīng)了,我得努努力:多多益善給大家開發(fā)一些更有趣的各種各樣的適合表白的小程序!
讓每個(gè)人都爭(zhēng)取過(guò)年帶著對(duì)象回家過(guò)年~嘿嘿嘿
今天,木木子推薦一個(gè)定制表白戀愛(ài)的項(xiàng)目:戀愛(ài)對(duì)話小程序
這個(gè)簡(jiǎn)單的項(xiàng)目,居然還蠻有趣的——如何操作?快來(lái)了解下。
一、小簡(jiǎn)介
turtle:繪圖模塊
PySimpleGUI:彈框制作模塊(一個(gè)非常簡(jiǎn)單好用的Python圖形界面庫(kù)(PysimpleGUI))
1)環(huán)境安裝
本文所用到的環(huán)境:Python3、Pycharm、PySimpleGUI、Turtle、time模塊。
環(huán)境安裝:pip install +模塊名 或帶豆瓣鏡像源pip install -i
https://pypi.douban.com/simple/ +模塊名
二、代碼演示
1)導(dǎo)入模塊
from turtle import * import time import PySimpleGUI as sg
2)倒計(jì)時(shí)
def draw_count_down(i): #倒數(shù)
bgcolor('black')
speed(0)
up()
goto(-50,-100)
color('white')
write(i, align="center",font=('Times New Roman', 200, 'bold'))
time.sleep(1)
3)畫2份不同的禮物
def draw_people(): #畫小人
up()
fillcolor()
begin_fill()
color('black','white')
goto(-300, 50) # 脖子坐標(biāo)
down()
circle(75) # 半徑為75的腦袋
end_fill()
right(90)
forward(175) # 身體的長(zhǎng)度175像素
right(45)
forward(100) # 腿長(zhǎng)100像素
up()
goto(-300, -120) # 畫另一條腿
down()
left(90)
forward(100)
up()
goto(-300, -5) # 手臂坐標(biāo)
down()
left(45)
forward(100) # 第一只手臂長(zhǎng)度
left(45)
forward(67) # 手掌長(zhǎng)度
up()
goto(-300, -40) # 第二只手臂坐標(biāo)
down()
right(45)
forward(100) # 第二只手臂長(zhǎng)度
right(45)
forward(67)
up()
goto(-330, 155) # 第一只眼睛起始坐標(biāo)
down()
right(45)
forward(50) # 眼睛長(zhǎng)度為50
up()
goto(-270, 155) # 第二只眼睛起始坐標(biāo)
down()
forward(50)
up()
pencolor('#F39F79')
goto(-340,100) #紅臉蛋第一只眼
seth(0)
down()
backward(40)
up()
goto(-260, 100) # 紅臉蛋第二只眼
down()
forward(40)
time.sleep(1)
def draw_heart(size):# 畫愛(ài)心
color('red', 'red')
down()
setheading(150)
begin_fill()
forward(size)
circle(size * -3.745, 45)
circle(size * -1.431, 165)
left(120)
circle(size * -1.431, 165)
circle(size * -3.745, 45)
forward(size)
end_fill()
def send_heart():#發(fā)射愛(ài)心
up()
goto(-50, -22)
draw_heart(14)
up()
goto(120, -22)
draw_heart(25)
penup()
goto(305, -22)
draw_heart(43)
def wr_character():
up()
goto(-50,-200)
pencolor('black')
write('驚', font=('行楷', 60, 'bold'))
up()
goto(50,-200)
write('不', font=('行楷', 60, 'bold'))
up()
goto(150,-200)
write('驚', font=('行楷', 60, 'bold'))
up()
goto(250,-200)
write('喜', font=('行楷', 60, 'bold'))
def draw_pupu(): #畫xxxx
up()
shapesize(10, 2)
speed(2)
fillcolor()
color('#805140','#805140')
begin_fill()
goto(-50, -20)
down()
circle(20)
end_fill()
begin_fill()
up()
goto(-50, -80)
down()
circle(40)
end_fill()
begin_fill()
up()
goto(10, -110)
seth(90)
down()
circle(60,180)
seth(0)
forward(120)
end_fill()
4)二種選擇是不同的繪圖倒計(jì)時(shí)之后就是繪制你回答的那個(gè)禮物。
def present_good(): #選擇是送的禮物 setup(1000,700) pensize(10) hideturtle() numbers=[5,4,3,2,1]#進(jìn)行倒數(shù) for i in numbers: draw_count_down(i) undo() draw_moon() draw_people() send_heart() wr_character() done() def present_bad(): #選擇不是送的禮物 setup(1000, 700) pensize(10) hideturtle() numbers=[5,4,3,2,1]#進(jìn)行倒數(shù) for i in numbers: draw_count_down(i) undo() draw_moon() draw_people() draw_pupu() wr_character() done()
5)彈窗設(shè)計(jì)的文字(可修改)
layout=[ #彈框內(nèi)容設(shè)計(jì)
[sg.Text('請(qǐng)輸入你的名字:')],[sg.Input()],
[sg.Text('請(qǐng)回答下面這個(gè)問(wèn)題哦!')],
[sg.Text('我是你喜歡的類型嘛?')],
[sg.Button('是的是的')],[sg.Button('不是')]
]
sg.popup('你好呀!我是你的好朋友為你定制的專屬男朋友','請(qǐng)按OK鍵繼續(xù)') #這是一個(gè)簡(jiǎn)易彈框
time.sleep(1)
window=sg.Window('小可愛(ài)',layout)
event,value=window.read()
window.close()
if event == '是的是的':
sg.popup(f'{value[0]}請(qǐng)按OK鍵接收男朋友的禮物!?')#這是一個(gè)簡(jiǎn)易彈框 #這里的value[0],是因?yàn)関alue返回內(nèi)容為字典
time.sleep(1)
present_good()
else:
sg.popup(f'{value[0]}竟然對(duì)我有意見,心碎了?。?,'但你的男友是個(gè)大度的人,送你一個(gè)小禮物吧','請(qǐng)按OK鍵接收我心碎的禮物!')
present_bad()
三、效果展示
1)視頻展示
可能視頻的話我錄制的比較粗糙,感覺(jué)有點(diǎn)兒看不清楚!
Turtle系列: 戀愛(ài)對(duì)話小程序之我是你喜歡的類型嘛?
2)截圖展示
2.1 彈窗界面

2.2 倒計(jì)時(shí)5秒

2.3這里選擇的是“是的是的”的禮物——選擇“不是”的禮物我就不截圖了,你們自己拿源碼試試 哈哈哈保留懸鏈。選擇不是的話超驚喜滴

以上就是基于Python實(shí)現(xiàn)的戀愛(ài)對(duì)話小程序詳解的詳細(xì)內(nèi)容,更多關(guān)于Python戀愛(ài)對(duì)話小程序的資料請(qǐng)關(guān)注本站其它相關(guān)文章!
版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非maisonbaluchon.cn所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。
關(guān)注官方微信