基于Python實(shí)現(xiàn)的戀愛對(duì)話小程序詳解
導(dǎo)語
哈嘍!大家好~我是木木子啦!自從寫了一些表白類型的一些小腳本、小程序之后,越發(fā)不可收拾了,哈哈哈。
常常會(huì)有小粉絲說:這......小程序不夠啊!剛表白去了,但是被拉黑了。
那我不答應(yīng)了,我得努努力:多多益善給大家開發(fā)一些更有趣的各種各樣的適合表白的小程序!
讓每個(gè)人都爭取過年帶著對(duì)象回家過年~嘿嘿嘿
今天,木木子推薦一個(gè)定制表白戀愛的項(xiàng)目:戀愛對(duì)話小程序
這個(gè)簡單的項(xiàng)目,居然還蠻有趣的——如何操作?快來了解下。
一、小簡介
turtle:繪圖模塊
PySimpleGUI:彈框制作模塊(一個(gè)非常簡單好用的Python圖形界面庫(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) # 身體的長度175像素
right(45)
forward(100) # 腿長100像素
up()
goto(-300, -120) # 畫另一條腿
down()
left(90)
forward(100)
up()
goto(-300, -5) # 手臂坐標(biāo)
down()
left(45)
forward(100) # 第一只手臂長度
left(45)
forward(67) # 手掌長度
up()
goto(-300, -40) # 第二只手臂坐標(biāo)
down()
right(45)
forward(100) # 第二只手臂長度
right(45)
forward(67)
up()
goto(-330, 155) # 第一只眼睛起始坐標(biāo)
down()
right(45)
forward(50) # 眼睛長度為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): # 畫愛心
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ā)射愛心
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('請輸入你的名字:')],[sg.Input()],
[sg.Text('請回答下面這個(gè)問題哦!')],
[sg.Text('我是你喜歡的類型嘛?')],
[sg.Button('是的是的')],[sg.Button('不是')]
]
sg.popup('你好呀!我是你的好朋友為你定制的專屬男朋友','請按OK鍵繼續(xù)') #這是一個(gè)簡易彈框
time.sleep(1)
window=sg.Window('小可愛',layout)
event,value=window.read()
window.close()
if event == '是的是的':
sg.popup(f'{value[0]}請按OK鍵接收男朋友的禮物!?') #這是一個(gè)簡易彈框 #這里的value[0],是因?yàn)関alue返回內(nèi)容為字典
time.sleep(1)
present_good()
else:
sg.popup(f'{value[0]}竟然對(duì)我有意見,心碎了??!','但你的男友是個(gè)大度的人,送你一個(gè)小禮物吧','請按OK鍵接收我心碎的禮物!')
present_bad()
三、效果展示
1)視頻展示
可能視頻的話我錄制的比較粗糙,感覺有點(diǎn)兒看不清楚!
Turtle系列: 戀愛對(duì)話小程序之我是你喜歡的類型嘛?
2)截圖展示
2.1 彈窗界面

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

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

以上就是基于Python實(shí)現(xiàn)的戀愛對(duì)話小程序詳解的詳細(xì)內(nèi)容,更多關(guān)于Python戀愛對(duì)話小程序的資料請關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
Python高級(jí)應(yīng)用實(shí)例對(duì)比:高效計(jì)算大文件中的最長行的長度
在操作某個(gè)很多進(jìn)程都要頻繁用到的大文件的時(shí)候,應(yīng)該盡早釋放文件資源(f.close()),只有這樣才能算是一則高效率的代碼,下面我們就來分析下這3種方法的優(yōu)劣2014-06-06
關(guān)于pycharm 切換 python3.9 報(bào)錯(cuò) ‘HTMLParser‘ object has no attribu
這篇文章主要介紹了pycharm 切換 python3.9 報(bào)錯(cuò) ‘HTMLParser‘ object has no attribute ‘unescape‘ 解決,需要的朋友可以參考下2020-11-11
cmd運(yùn)行python文件時(shí)對(duì)結(jié)果進(jìn)行保存的方法
今天小編就為大家分享一篇cmd運(yùn)行python文件時(shí)對(duì)結(jié)果進(jìn)行保存的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2018-05-05
在 Windows 下搭建高效的 django 開發(fā)環(huán)境的詳細(xì)教程
這篇文章主要介紹了如何在 Windows 下搭建高效的 django 開發(fā)環(huán)境,本文通過一篇詳細(xì)教程實(shí)例代碼相結(jié)合給大家講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-07-07
Python?ChineseCalendar包主要類和方法詳解
ChineseCalendar?是一個(gè)?Python?包,用于獲取中國傳統(tǒng)日歷信息。這個(gè)包提供了中國農(nóng)歷、二十四節(jié)氣、傳統(tǒng)節(jié)日、黃歷等信息,這篇文章主要介紹了Python?ChineseCalendar包簡介,需要的朋友可以參考下2023-03-03
Python3 ID3決策樹判斷申請貸款是否成功的實(shí)現(xiàn)代碼
這篇文章主要介紹了Python3 ID3決策樹判斷申請貸款是否成功的實(shí)現(xiàn)代碼,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-05-05

