最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于Python Pygame實現(xiàn)的畫餅圖游戲

 更新時間:2021年12月08日 10:02:32   作者:我的天才女友  
這篇文章主要介紹了基于Pygame實現(xiàn)一個畫餅圖游戲,可以根據(jù)鍵盤上輸入不同的數(shù)字,將圓分割成不同的幾個部分,每部分用不同的顏色來實現(xiàn)。需要的朋友可以參考一下

這個游戲就是實現(xiàn)鍵盤上輸入不同的數(shù)字,將圓分割成不同的幾個部分,每部分用不同的顏色來實現(xiàn)。

導入包

導入隨機包,pygame,系統(tǒng)包,time時間包用于時間暫停。math是用來確認弧度的。

import random
import pygame, sys, time
import math
from pygame.locals import *

配置基本參數(shù)

初始化pygame,設(shè)置窗口大小標題,設(shè)置圓心的x和y軸,圓的半徑,線條的寬度,這里設(shè)置的足夠大,就會填充整個扇形。設(shè)置圓形的屬性,初始的扇形的個數(shù)設(shè)置為2

pygame.init()

screen = pygame.display.set_mode((400, 400))
pygame.display.set_caption("分餅干")

# 餅圖設(shè)置
x = 200
y = 200
radius = 100
# 顏色
WHITE = (255, 255, 255)
# 線條寬度
WIDTH = 100
# 設(shè)置橢圓的屬性
ellipse = (x - radius, y - radius, radius * 2, radius * 2)
# 扇形大小
sectorNum = 2

根據(jù)輸入的數(shù)字改變扇形的個數(shù)

根據(jù)按下數(shù)字的鍵,改變扇形的個數(shù)

def get_sector_num(key):
    """根據(jù)用戶輸入的數(shù)字決定扇形的大小"""
    if key == pygame.K_2:
        return 2
    elif key == pygame.K_3:
        return 3
    elif key == pygame.K_4:
        return 4
    elif key == pygame.K_5:
        return 5
    elif key == pygame.K_6:
        return 6
    elif key == pygame.K_7:
        return 7
    elif key == pygame.K_8:
        return 8
    elif key == pygame.K_9:
        return 9
    return 1

監(jiān)聽事件

循環(huán)扇形的個數(shù),計算開始結(jié)束的弧形,并設(shè)置隨機的顏色。

while True:
    for event in pygame.event.get():
        if event.type == QUIT:
            pygame.quit()
            sys.exit()
        if event.type == KEYDOWN:
            if event.key == pygame.K_ESCAPE:
                pygame.quit()
                sys.exit()
            else:
                sectorNum = get_sector_num(event.key)
    screen.fill(WHITE)
    for i in range(sectorNum):
        start_angle = 0 + (360 / sectorNum) * i
        end_angle = (360 / sectorNum) * (i + 1)
        pygame.draw.arc(screen, (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255)), ellipse,
                        math.radians(start_angle),  math.radians(end_angle), 100)
    pygame.display.update()
    time.sleep(1)

import random
import pygame, sys, time
import math
from pygame.locals import *

pygame.init()

screen = pygame.display.set_mode((400, 400))
pygame.display.set_caption("分餅干")

# 餅圖設(shè)置
x = 200
y = 200
radius = 100
# 顏色
WHITE = (255, 255, 255)
# 線條寬度
WIDTH = 4

# 設(shè)置橢圓的屬性
ellipse = (x - radius, y - radius, radius * 2, radius * 2)
# 扇形大小
sectorNum = 2


def get_sector_num(key):
    """根據(jù)用戶輸入的數(shù)字決定扇形的大小"""
    if key == pygame.K_2:
        return 2
    elif key == pygame.K_3:
        return 3
    elif key == pygame.K_4:
        return 4
    elif key == pygame.K_5:
        return 5
    elif key == pygame.K_6:
        return 6
    elif key == pygame.K_7:
        return 7
    elif key == pygame.K_8:
        return 8
    elif key == pygame.K_9:
        return 9
    return 1


while True:
    for event in pygame.event.get():
        if event.type == QUIT:
            pygame.quit()
            sys.exit()
        if event.type == KEYDOWN:
            if event.key == pygame.K_ESCAPE:
                pygame.quit()
                sys.exit()
            else:
                sectorNum = get_sector_num(event.key)
    screen.fill(WHITE)
    for i in range(sectorNum):
        start_angle = 0 + (360 / sectorNum) * i
        end_angle = (360 / sectorNum) * (i + 1)
        pygame.draw.arc(screen, (random.randint(0, 255), random.randint(0, 255), random.randint(0, 255)), ellipse,
                        math.radians(start_angle),  math.radians(end_angle), 100)
    pygame.display.update()
    time.sleep(1) 

到此這篇關(guān)于基于Python Pygame實現(xiàn)的畫餅圖游戲的文章就介紹到這了,更多相關(guān)Python Pygame 畫餅圖游戲內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 詳解Python3遷移接口變化采坑記

    詳解Python3遷移接口變化采坑記

    這篇文章主要介紹了詳解Python3遷移接口變化采坑記,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-10-10
  • python 簡單的繪圖工具turtle使用詳解

    python 簡單的繪圖工具turtle使用詳解

    這篇文章主要介紹了python 簡單的繪圖工具turtle使用詳解的相關(guān)資料,需要的朋友可以參考下
    2017-06-06
  • 使用python進行二維碼生成和識別的實現(xiàn)

    使用python進行二維碼生成和識別的實現(xiàn)

    在Python中,生成和識別二維碼可以使用不同的庫來實現(xiàn),最常用的庫包括 qrcode 和 pyzbar,以下是如何使用這些庫來生成和識別二維碼的示例,感興趣的小伙伴可以參考閱讀下
    2024-09-09
  • Python繪制頻率分布直方圖的示例

    Python繪制頻率分布直方圖的示例

    今天小編就為大家分享一篇Python繪制頻率分布直方圖的示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • Python簡單刪除列表中相同元素的方法示例

    Python簡單刪除列表中相同元素的方法示例

    這篇文章主要介紹了Python簡單刪除列表中相同元素的方法,結(jié)合具體實例形式分析了Python使用list、set方法針對列表元素的去重與排序操作實現(xiàn)技巧,非常簡單實用,需要的朋友可以參考下
    2017-06-06
  • python實現(xiàn)文本進度條 程序進度條 加載進度條 單行刷新功能

    python實現(xiàn)文本進度條 程序進度條 加載進度條 單行刷新功能

    這篇文章主要介紹了python實現(xiàn)文本進度條 程序進度條 加載進度條 單行刷新功能,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-07-07
  • python內(nèi)置函數(shù)anext的具體使用

    python內(nèi)置函數(shù)anext的具體使用

    本文主要介紹了python內(nèi)置函數(shù)anext的具體使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2023-01-01
  • Python性能優(yōu)化的20條建議

    Python性能優(yōu)化的20條建議

    不論什么語言我們都需要注意性能優(yōu)化問題,提高執(zhí)行效率,這里就為大家分享下Python的性能優(yōu)化技巧,需要的朋友可以參考下
    2014-10-10
  • python-itchat 獲取微信群用戶信息的實例

    python-itchat 獲取微信群用戶信息的實例

    今天小編就為大家分享一篇python-itchat 獲取微信群用戶信息的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-02-02
  • tornado捕獲和處理404錯誤的方法

    tornado捕獲和處理404錯誤的方法

    這篇文章主要介紹了tornado捕獲和處理404錯誤的方法,方法很簡單,只要覆寫write_error方法就可以,看下面的代碼就明白了
    2014-02-02

最新評論

深水埗区| 太仆寺旗| 宾川县| 蒙阴县| 浦江县| 留坝县| 新安县| 长治市| 石嘴山市| 铁力市| 黄石市| 合山市| 渭源县| 宿迁市| 平阴县| 灵宝市| 抚松县| 开平市| 伊通| 大渡口区| 金昌市| 泽普县| 山西省| 莱西市| 丹阳市| 嫩江县| 乌海市| 明水县| 长丰县| 山西省| 普兰县| 巨鹿县| 高淳县| 叶城县| 广东省| 平湖市| 秦皇岛市| 曲水县| 东明县| 芜湖县| 丽水市|