91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何用Python代碼做個刮刮卡

發布時間:2021-10-26 14:43:02 來源:億速云 閱讀:175 作者:柒染 欄目:大數據

這篇文章給大家介紹如何用Python代碼做個刮刮卡,內容非常詳細,感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

刮刮卡通常指卡上的一種覆蓋數字和字母密碼等的涂層,通常包括紙質和電子兩種類型,刮刮卡在市場上有著比較廣泛的應用,我們見到最多的應該是各類抽獎活動了,我們使用 Python 來做一個簡單的抽獎刮刮卡。

 

實現

首先,我們弄幾張圖片做底板,如下所示:

如何用Python代碼做個刮刮卡

從圖中我們可以看到底圖包括:一等獎、二等獎、謝謝惠顧三種,如果我們參與過刮刮卡抽獎的話,會發現幾乎刮開都是謝謝惠顧之類的,也就是有個概率的問題,這里我們也簡單設置一下,一等獎放一張、二等獎放兩張、謝謝惠顧放三張,生成刮刮卡時隨機使用底圖就可以了。

實現刮刮卡,我們主要用到是 pygame 模塊,之前做小游戲時已經用到過幾次了,大家應該都比較熟悉,下面看一下具體實現。

我們先定義一下常量,如:路徑、圖片類型、顏色等,代碼實現如下:

path = 'prize'
ptype = ['jpg', 'png', 'bmp', 'JPG', 'PNG', 'BMP']
# 窗口大小
screen_size = (600, 400)
white = (255, 255, 255, 20)
gray = (192, 192, 192)
 

然后創建一個窗口,代碼實現如下:

pygame.init()
pygame.mouse.set_cursor(*pygame.cursors.diamond)
screen = pygame.display.set_mode(screen_size)
pygame.display.set_caption('刮一刮抽獎')
 

接著從所有底圖中隨機取出一張綁定到窗口,代碼實現如下:

filenames = os.listdir(path)
filenames = [f for f in filenames if f.split('.')[-1] in ptype]
imgpath = os.path.join(path, random.choice(filenames))
image_used = pygame.transform.scale(pygame.image.load(imgpath), screen_size)
screen.blit(image_used, (0, 0))
 

再接著做一個灰色的圖層覆蓋到底圖上,代碼實現如下:

surface = pygame.Surface(screen_size).convert_alpha()
surface.fill(gray)
screen.blit(surface, (0, 0))
 

最后,我們定義一下鼠標事件,在鼠標移動經過的地方,將圖層置為透明,漏出底圖,代碼實現如下:

mouse_event = pygame.mouse.get_pressed()
if mouse_event[0]:
 pygame.draw.circle(surface, white, pygame.mouse.get_pos(), 40)
elif mouse_event[-1]:
 surface.fill(gray)
 image_used = pygame.transform.scale(pygame.image.load(imgpath), screen_size)
 

一起來看一下實現效果:

如何用Python代碼做個刮刮卡

是不是有內味了如何用Python代碼做個刮刮卡

關于如何用Python代碼做個刮刮卡就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

清徐县| 马龙县| 略阳县| 北碚区| 辽宁省| 鄂托克旗| 合肥市| 嘉荫县| 顺义区| 永仁县| 拜城县| 连南| 天津市| 合水县| 永和县| 泸定县| 寿光市| 嘉定区| 平泉县| 岑溪市| 礼泉县| 佛山市| 乌兰县| 绥中县| 湘潭市| 剑河县| 涿鹿县| 和龙市| 焦作市| 瓦房店市| 广丰县| 七台河市| 马边| 加查县| 九龙城区| 桃园市| 凤冈县| 珠海市| 杨浦区| 松原市| 独山县|