人妖在线一区,国产日韩欧美一区二区综合在线,国产啪精品视频网站免费,欧美内射深插日本少妇

新聞動(dòng)態(tài)

Python戀愛小助手之必拿下

發(fā)布日期:2021-12-25 16:18 | 文章來源:源碼之家

導(dǎo)語

害!現(xiàn)在是10月份了,國(guó)慶過完也降溫了——還有幾個(gè)月就過年了,哦吼~

這一年就快過去了,不知道小編帶給大家這么多的表白代碼都用了沒?用了沒吖?如果沒用的話小編會(huì)繼續(xù)助攻!

不知道各位單身人士,有沒有人從單身dog進(jìn)化為秀恩愛dog撒~

​​​​​​​Ps——小故事

在我大四的時(shí)候,就有一個(gè)計(jì)算機(jī)的朋友用自己做的代碼感動(dòng)了一個(gè)數(shù)學(xué)系的女生。

就是下面這種。(這個(gè)愛心是詞云圖制作而成的!)也不知道為什么妹子放棄了全班40多位帥哥(沒錯(cuò),他們班就她一

個(gè)女生),而選擇了頭發(fā)日漸稀疏已經(jīng)“六月懷胎”的我——朋友。

今天,我就來教大家一下,如何用Python做二份特別的禮物送給自己的戀人。

當(dāng)然了,如果還是單身的,也可以把這個(gè)作為表白神器,跟心愛的人表白。

懂編程的就看下面的吧!送上這份禮物之后,保證你明晚.....巫山云雨后,天氣晚來秋啊!嘿嘿嘿嘿~

正文

你是不是喜歡我?好巧,我也是吖~

一、Part 1 表白篇—界面化表白小程序

1)環(huán)境安裝

本文是基于Tkinter的界面化小程序,準(zhǔn)備好相應(yīng)的安裝環(huán)境素材如下:

Python3、Pycharm、Pygame模塊以及一些自帶的就不說啦!

統(tǒng)一安裝模塊命令:​pip install -i https://pypi.douban.com/simple/ +模塊名

2)素材自備

這邊小編準(zhǔn)備的部分圖片如下:

一些背景音樂、字體當(dāng)然也要準(zhǔn)備好滴哈:

3)正式敲代碼

3.1 先介紹下代碼部分單詞的作用

Function:
	按鈕類
Initial Args:
	--x, y: 按鈕左上角坐標(biāo)
	--width, height: 按鈕寬高
	--text: 按鈕顯示的文字
	--fontpath: 字體路徑
	--fontsize: 字體大小
	--fontcolor: 字體顏色
	--bgcolors: 按鈕背景顏色
	--is_want_to_be_selected: 按鈕是否想被玩家選中
	--screensize: 軟件屏幕大小
'''

3.2 配置一些界面窗口的小設(shè)置

# 窗口大小(width, height)
SCREENSIZE = (500, 260)
# 定義一些顏色
RED = (255, 0, 0)
BLACK = (0, 0, 0)
AZURE = (240, 255, 255)
WHITE = (255, 255, 255)
MISTYROSE = (255, 228, 225)
PALETURQUOISE = (175, 238, 238)
PAPAYAWHIP = (255, 239, 213)
LIGHTGRAY = (211, 211, 211)
GAINSBORO = (230, 230, 230)
WHITESMOKE = (245, 245, 245)
DARKGRAY = (169, 169, 169)
BLUE = (0, 0, 255)
DEEPSKYBLUE = (0, 191, 255)
SKYBLUE = (135, 206, 235)
LIGHTSKYBLUE = (135, 206, 250)
# 背景音樂路徑
BGM_PATH = os.path.join(os.getcwd(), 'resources/music/bgm.mp3')
# 字體路徑
FONT_PATH = os.path.join(os.getcwd(), 'resources/font/STXINGKA.TTF')
# 背景圖片路徑
BG_IMAGE_PATH = os.path.join(os.getcwd(), 'resources/images/01.jpg')
# ICON路徑
ICON_IMAGE_PATH = os.path.join(os.getcwd(), 'resources/images/icon.png')

3.3 主函數(shù)

def main():
	# 初始化
	pygame.init()
	screen = pygame.display.set_mode(cfg.SCREENSIZE, 0, 32)
	pygame.display.set_icon(pygame.image.load(cfg.ICON_IMAGE_PATH))
	pygame.display.set_caption('你知道嘛?')
	# 背景音樂
	pygame.mixer.music.load(cfg.BGM_PATH)
	pygame.mixer.music.play(-1, 30.0)
	# biu愛心那個(gè)背景圖片
	bg_image = pygame.image.load(cfg.BG_IMAGE_PATH)
	bg_image = pygame.transform.smoothscale(bg_image, (150, 150))
	# 實(shí)例化兩個(gè)按鈕
	button_yes = Button(x=20, y=cfg.SCREENSIZE[1]-70, width=120, height=35, 
text='愿意', fontpath=cfg.FONT_PATH, fontsize=15, fontcolor=cfg.BLACK, edgecolor=cfg.SKYBLUE,
edgesize=2, bgcolors=[cfg.DARKGRAY, cfg.GAINSBORO], is_want_to_be_selected=True, screensize=cfg.SCREENSIZE)
	button_no = Button(x=cfg.SCREENSIZE[0]-140, y=cfg.SCREENSIZE[1]-70, width=120, height=35, 
					text='不愿意', fontpath=cfg.FONT_PATH, fontsize=15, fontcolor=cfg.BLACK, edgecolor=cfg.DARKGRAY,
					edgesize=1, bgcolors=[cfg.DARKGRAY, cfg.GAINSBORO], is_want_to_be_selected=False, screensize=cfg.SCREENSIZE)
	# 是否點(diǎn)擊了好呀按鈕
	is_agree = False
	# 主循環(huán)
	clock = pygame.time.Clock()
	while True:
		# --背景圖片
		screen.fill(cfg.WHITE)
		screen.blit(bg_image, (cfg.SCREENSIZE[0]-bg_image.get_height(), 0))
		# --鼠標(biāo)事件捕獲
		for event in pygame.event.get():
			if event.type == pygame.QUIT:
				# ----沒有點(diǎn)擊好呀按鈕之前不許退出程序
				if is_agree:
					pygame.quit()
					sys.exit()
			elif event.type == pygame.MOUSEBUTTONDOWN and event.button:
				if button_yes.rect.collidepoint(pygame.mouse.get_pos()):
					button_yes.is_selected = True
					root = Tk()
					root.withdraw()
					messagebox.showinfo('', '永遠(yuǎn)愛你')
					root.destroy()
					is_agree = True
		# --顯示文字
		showText(screen=screen, text='自從我們相遇的那一刻,', position=(40, 50),
				 fontpath=cfg.FONT_PATH, fontsize=25, fontcolor=cfg.BLACK, is_bold=False)
		showText(screen=screen, text='你是我白天黑夜不落的星!', position=(40, 100),
				 fontpath=cfg.FONT_PATH, fontsize=25, fontcolor=cfg.BLACK, is_bold=True)
		# --顯示按鈕
		button_yes.draw(screen, pygame.mouse.get_pos())
		button_no.draw(screen, pygame.mouse.get_pos())
		# --刷新
		pygame.display.update()
		clock.tick(60)

4)效果圖

運(yùn)行代碼之后——背景音樂一上來就有那個(gè)味兒了~嘿嘿 超浪漫,界面也很好看的吖——想要什么字體、界面可以自己設(shè)置修改優(yōu)化的!

4.1 自從我們相遇的那一刻,你是我白天黑夜不落的星。 ——萊蒙托夫《烏黑的眼睛》

4.2 我會(huì)不愛你嗎?不愛你?不會(huì),愛你就像愛生命。——王小波

4.3​ 情侶超甜——甜度爆表??!哈哈哈啊

二、Part 2 表白篇—字符畫表白小程序

1)環(huán)境安裝

相應(yīng)的安裝環(huán)境素材如下:

Python3、Pycharm、Pillow模塊以及一些自帶的就不說啦!

統(tǒng)一安裝模塊命令:​pip install -i https://pypi.douban.com/simple/ +模塊名

2)素材自備

這邊小編準(zhǔn)備的部分圖片如下:

3) 正式敲代碼

3.1主要代碼

#-*- coding=utf-8 -*-
 
from PIL import Image
 
IMG = '02.jpg'#設(shè)置圖片文件
WIDTH = 150  #設(shè)置字符畫的寬
HEIGHT = 80  #設(shè)置字符畫的高
OUTPUT = 'ym.txt'#設(shè)置存放字符畫的文本文件
ascii_char = list("我喜歡你") #設(shè)置顯示的字符集
 
#將256灰度映射到70個(gè)字符上
def get_char(r,g,b,alpha = 256):
 #alpha為透明度
 # 判斷 alpha 值,為0表示全透明
 if alpha == 0:
  return ' '
 
 # 獲取字符集的長(zhǎng)度,這里為 70
 length = len(ascii_char)
 # 將 RGB 值轉(zhuǎn)為灰度值 gray,灰度值范圍為 0-255
 gray = int(0.2126 * r + 0.7152 * g + 0.0722 * b)
 
 # 灰度值范圍為 0-255,而字符集只有 70
 # 需要進(jìn)行如下處理才能將灰度值映射到指定的字符上
 #防止當(dāng)灰度值為255時(shí),輸出的第70個(gè)字符超出列表索引,所以需要將(255+1)
 unit = (255.0 + 1)/length
 
 # 返回灰度值對(duì)應(yīng)的字符
 return ascii_char[int(gray/unit)]
 
if __name__ == '__main__':
 
 # 打開并調(diào)整圖片的寬和高
 im = Image.open(IMG)
 im = im.resize((WIDTH,HEIGHT), Image.NEAREST)
 
 # 初始化輸出的字符串
 txt = ""
 
 # 遍歷圖片中的每一行
 for i in range(HEIGHT):
  # 遍歷該行中的每一列
  for j in range(WIDTH):
# 將 (j,i) 坐標(biāo)的 RGB 像素轉(zhuǎn)為字符后添加到 txt 字符串
txt += get_char(*im.getpixel((j,i)))
  # 遍歷完一行后需要增加換行符
  txt += '\n'
 # 輸出到屏幕
 print(txt)
 with open(OUTPUT,'w') as f:
  f.write(txt)

4)效果圖

4.1 圖跟文字選的不好,所以效果有點(diǎn)兒社會(huì)性死亡了!哈哈哈~尷尬的笑笑緩解一下,不要是去表白的結(jié)果變成分手了哈!

4.2 這張圖選擇我估計(jì)看不出來是個(gè)人了!所以說——選擇圖片跟文字是有技巧的,只是我比較懶!

總結(jié)

“余生很長(zhǎng),想和你沒完沒了”——所以看到這里的小伙伴兒記得收藏哦!哈哈哈

好啦 !這二款表白的代碼就寫到這里了哈,是不是今天又學(xué)到了一招會(huì)撩妹紙撩漢子的小技巧。趕快自己去試試吧~

你們的支持是我最大的動(dòng)力?。ua 歡迎大家閱讀往期的文章哦~

到此這篇關(guān)于Python戀愛小助手之必拿下的文章就介紹到這了,更多相關(guān)Python 戀愛小程序內(nèi)容請(qǐng)搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持本站!

版權(quán)聲明:本站文章來源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來,僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。

相關(guān)文章

實(shí)時(shí)開通

自選配置、實(shí)時(shí)開通

免備案

全球線路精選!

全天候客戶服務(wù)

7x24全年不間斷在線

專屬顧問服務(wù)

1對(duì)1客戶咨詢顧問

在線
客服

在線客服:7*24小時(shí)在線

客服
熱線

400-630-3752
7*24小時(shí)客服服務(wù)熱線

關(guān)注
微信

關(guān)注官方微信
頂部