电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

python pygame入門教程

瀏覽:2日期:2022-06-17 18:33:46
目錄一、安裝二、第一個代碼實例三、繪制一個矩形框四、繪制矩形框的進階版本五、繪制一條直線六、繪制一條弧線一、安裝

在 cmd 命令中輸入: pip install pygame

即可安裝成功了

二、第一個代碼實例

代碼快里面有注釋,想必大家都可以看懂的。

import pygameimport sysimport pygame.localspygame.init()# 初始化screen = pygame.display.set_mode((500, 600))# 設置屏幕的大小pygame.display.set_caption('First Demo')# 設置屏幕的名稱Seashell = 255, 245, 238# 設置 RGB 顏色NavyBlue = 0, 0, 128# 設置 RGB 顏色while True: for event in pygame.event.get():if event.type == pygame.locals.QUIT or event.type == pygame.locals.KEYDOWN: # 如果點擊關閉按鈕,或者按下任意鍵,那么退出程序 sys.exit()else: pass screen.fill(Seashell) position = (250, 300) pygame.draw.circle(screen, color=NavyBlue, center=position, radius=100, width=50) pygame.display.update()

運行結果

python pygame入門教程

這個實例只需要強調(diào)一下的是:

1、QUIT表示按下關閉的按鈕,KEYDOWN是按下任意一個按鍵,這兩個都是pygame內(nèi)部自己定義好的常量。

2、顏色可以用RGB進行表示

三、繪制一個矩形框

import pygameimport pygame.localsimport syspygame.init()screen = pygame.display.set_mode((600, 500))pygame.display.set_caption('Drawing Rectangles')# 設置名稱Blue = 0, 0, 255Purple = 160, 32, 240while True: for event in pygame.event.get():if event.type == pygame.locals.QUIT or event.type == pygame.locals.KEYDOWN: # 還是如果說點擊了關閉的按鍵,或者是按下了任意鍵,那么就可以關閉程序了 sys.exit() pos = (300, 250, 100, 100) # 這里的 pos 不僅設置了位置,而且設置了長度以及寬度 screen.fill(Purple) pygame.draw.rect(screen, Blue, pos, width=10) # width 是線條的寬度,screen 表示指定使用哪一個屏幕進行顯示 pygame.display.update()

代碼運行的結果;

python pygame入門教程

四、繪制矩形框的進階版本

import pygameimport pygame.localsimport sysimport timepygame.init()screen = pygame.display.set_mode((600, 500))pygame.display.set_caption('Drawing Moving Rectangle')color1 = 139, 0, 139color2 = 104, 131, 139px = 200py = 300# 初始化的位置應該放在外面,否則會一直在一個地方繪制圖形了vx = 10vy = 20# 初始化速度也應該放在外面,否則會一直以恒定的速度運動while True: for event in pygame.event.get():if event.type in (pygame.locals.QUIT, pygame.locals.KEYDOWN): # 如果是按下了任意鍵或者是點擊了關閉按鈕,那么退出程序 sys.exit() # vx = 10 # vy = 20 # px = 200 # py = 300 px += vx py += vy if px <= 0 or px + 100 >= 600:vx = - vx # else: # px += vx if py <= 0 or py + 100 >= 500:vy = - vy # else: # py += vy screen.fill(color1) pygame.draw.rect(screen, color2, (px, py, 100, 100)) time.sleep(0.2) pygame.display.update()五、繪制一條直線

# 繪制線條import pygameimport pygame.localsimport sysimport timecolor1 = 0, 80, 0color2 = 100, 255, 200pygame.init()# 初始化screen = pygame.display.set_mode((600, 500))# 設置顯示屏幕pygame.display.set_caption('Drawing Lines')# 設置顯示框的標題的名稱while True: for event in pygame.event.get():if event.type == pygame.locals.QUIT or event.type == pygame.locals.KEYDOWN: sys.exit() # 與前面一樣,如果說按下任意鍵或者是按下關閉的按鈕,那么我們就退出程序 screen.fill(color1) pygame.draw.line(screen, color2, (150, 150), (450, 450), width=10) pygame.display.update()

運行代碼的結果展示;

python pygame入門教程

在這里,我們再一次詳細地介紹一下line里面的各個參數(shù)的意義:

pygame.draw.line(screen, color2, (150, 150), (450, 450), width=10)

1、第一個參數(shù) : 設置用于顯示的屏幕是誰

2、第二個參數(shù) : 設置直線段的顏色

3、第三個闡述 : 設置起點,也就是開始的位置

4、第四個參數(shù) : 設置終點,也就是停止的位置

5、第五個參數(shù) : 設置線條的寬度或者說是粗細的程度

最后再說一句,別忘記了加上一個

pygame.display.update()

用來更新畫面

六、繪制一條弧線

首先,我們繪制一個圓的一部分,也就是真正的圓弧形:

import mathimport pygameimport pygame.localsimport sysimport timecolor1 = 144, 238, 144color2 = 0, 0, 139pygame.init()pygame.display.set_caption('Drawing Arcs')screen = pygame.display.set_mode((600, 500))while True: for event in pygame.event.get():if event.type in (pygame.locals.QUIT, pygame.locals.KEYDOWN): sys.exit() screen.fill(color1) ang1 = math.radians(45) # 設置起始角位置 ang2 = math.radians(315) # 設置結束的角位置 # 設置矩形框 ''' 元組中; 第一個參數(shù),矩形框的左上角的橫坐標 第二個參數(shù),矩形框的右上角的縱坐標 第三個參數(shù),矩形框的長度 即就是:相對于 x 軸平行的方向的長度 第四個參數(shù),矩形框的寬度 即就是:相對于 y 軸平行的方向的長度另外,如果矩形框的長度和寬度不相等的話,繪制出來的弧線不是圓的一部分, 而是橢圓的一部分 ''' rect1 = 100, 50, 400, 400 # 第一個矩形框----畫園的一部分 rect2 = 200, 200, 200, 100 # 第二個矩形框----畫橢園的一部分 pygame.draw.arc(screen, color2, rect1, ang1, ang2, width=10) # 參數(shù)的含義解釋 ''' 第一個參數(shù):屏幕 第二個參數(shù):顏色 第三個參數(shù):開始的角度 第四個參數(shù):結束的角度 第五個參數(shù):線條的寬度 ''' pygame.display.update()

python pygame入門教程

接下來,我們繪制一個橢圓形的一部分:

正如前一個實例中的注釋所說,如果說:這個矩形框的長度和寬度不是相等的,那么,使用這個方法就是會繪制一個放 縮以后的橢圓形。

此處僅僅是吧上一個實例中的 rect1 換用為了 rect2 ,其他部分沒有任何的變化;

import mathimport pygameimport pygame.localsimport sysimport timecolor1 = 144, 238, 144color2 = 0, 0, 139pygame.init()pygame.display.set_caption('Drawing Arcs')screen = pygame.display.set_mode((600, 500))while True: for event in pygame.event.get():if event.type in (pygame.locals.QUIT, pygame.locals.KEYDOWN): sys.exit() screen.fill(color1) ang1 = math.radians(45) # 設置起始角位置 ang2 = math.radians(315) # 設置結束的角位置 # 設置矩形框 ''' 元組中; 第一個參數(shù),矩形框的左上角的橫坐標 第二個參數(shù),矩形框的右上角的縱坐標 第三個參數(shù),矩形框的長度 即就是:相對于 x 軸平行的方向的長度 第四個參數(shù),矩形框的寬度 即就是:相對于 y 軸平行的方向的長度另外,如果矩形框的長度和寬度不相等的話,繪制出來的弧線不是圓的一部分, 而是橢圓的一部分 ''' rect1 = 100, 50, 400, 400 # 第一個矩形框----畫園的一部分 rect2 = 200, 200, 200, 100 # 第二個矩形框----畫橢園的一部分 pygame.draw.arc(screen, color2, rect2, ang1, ang2, width=10) # 參數(shù)的含義解釋 ''' 第一個參數(shù):屏幕 第二個參數(shù):顏色 第三個參數(shù):開始的角度 第四個參數(shù):結束的角度 第五個參數(shù):線條的寬度 ''' pygame.display.update()

運行代碼的結果如下圖所示;

python pygame入門教程

我們可以看到,這里確實是把豎直方向的寬度進行了壓縮,使得原本的那個圓形變?yōu)榱艘粋€橢圓,同時,我們也把圓弧形,變?yōu)榱艘粋€橢圓弧形。

綜上,以上就是我的第一份筆記,后續(xù)會進行更新的啦,這是第一份,后續(xù)有多少還沒想好,但總之會持續(xù)更新,直到我把pygame學習完畢。后續(xù)還會去看看有沒有機會學習頁游,手游等游戲得制作,加油!

以上就是python pygame入門教程的詳細內(nèi)容,更多關于python pygame入門的資料請關注好吧啦網(wǎng)其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 低粘度纤维素|混凝土灌浆料|有机硅憎水粉|聚羧酸减水剂-南京斯泰宝 | 太阳能发电系统-太阳能逆变器,控制器-河北沐天太阳能科技首页 | 企业微信scrm管理系统_客户关系管理平台_私域流量运营工具_CRM、ERP、OA软件-腾辉网络 | 天津热油泵_管道泵_天津高温热油泵-天津市金丰泰机械泵业有限公司【官方网站】 | 活性炭厂家-蜂窝活性炭-粉状/柱状/果壳/椰壳活性炭-大千净化-活性炭 | 挨踢网-大家的导航! | 除甲醛公司-甲醛检测治理-杭州创绿家环保科技有限公司-室内空气净化十大品牌 | 除湿机|工业除湿机|抽湿器|大型地下室车间仓库吊顶防爆除湿机|抽湿烘干房|新风除湿机|调温/降温除湿机|恒温恒湿机|加湿机-杭州川田电器有限公司 | 合肥办公室装修 - 合肥工装公司 - 天思装饰 | 机房监控|动环监控|动力环境监控系统方案产品定制厂家 - 迈世OMARA | 驾驶式洗地机/扫地机_全自动洗地机_工业洗地机_荣事达工厂官网 | 土壤墒情监测站_土壤墒情监测仪_土壤墒情监测系统_管式土壤墒情站-山东风途物联网 | 广东护栏厂家-广州护栏网厂家-广东省安麦斯交通设施有限公司 | 北京租车公司_汽车/客车/班车/大巴车租赁_商务会议/展会用车/旅游大巴出租_北京桐顺创业租车公司 | 高空重型升降平台_高空液压举升平台_高空作业平台_移动式升降机-河南华鹰机械设备有限公司 | 仓储笼_金属箱租赁_循环包装_铁网箱_蝴蝶笼租赁_酷龙仓储笼租赁 测试治具|过炉治具|过锡炉治具|工装夹具|测试夹具|允睿自动化设备 | 纯水设备_苏州皙全超纯水设备水处理设备生产厂家 | 运动木地板厂家_体育木地板安装_篮球木地板选购_实木运动地板价格 | 单机除尘器 骨架-脉冲除尘器设备生产厂家-润天环保设备 | 辐射色度计-字符亮度测试-反射式膜厚仪-苏州瑞格谱光电科技有限公司 | 金属雕花板_厂家直销_价格低-山东慧诚建筑材料有限公司 | 合肥风管加工厂-安徽螺旋/不锈钢风管-通风管道加工厂家-安徽风之范 | 磁粉制动器|张力控制器|气胀轴|伺服纠偏控制器整套厂家--台灵机电官网 | 阴离子_阳离子聚丙烯酰胺厂家_聚合氯化铝价格_水处理絮凝剂_巩义市江源净水材料有限公司 | 高温链条油|高温润滑脂|轴承润滑脂|机器人保养用油|干膜润滑剂-东莞卓越化学 | PCB厂|线路板厂|深圳线路板厂|软硬结合板厂|电路板生产厂家|线路板|深圳电路板厂家|铝基板厂家|深联电路-专业生产PCB研发制造 | 无负压供水设备,消防稳压供水设备-淄博创辉供水设备有限公司 | VI设计-LOGO设计公司-品牌设计公司-包装设计公司-导视设计-杭州易象设计 | 烟气换热器_GGH烟气换热器_空气预热器_高温气气换热器-青岛康景辉 | 包塑丝_高铁绑丝_地暖绑丝_涂塑丝_塑料皮铁丝_河北创筹金属丝网制品有限公司 | 震动筛选机|震动分筛机|筛粉机|振筛机|振荡筛-振动筛分设备专业生产厂家高服机械 | 滑石粉,滑石粉厂家,超细滑石粉-莱州圣凯滑石有限公司 | 釜溪印象网络 - Powered by Discuz! | Safety light curtain|Belt Sway Switches|Pull Rope Switch|ultrasonic flaw detector-Shandong Zhuoxin Machinery Co., Ltd | 开云(中国)Kaiyun·官方网站 - 登录入口| 沈阳真空机_沈阳真空包装机_沈阳大米真空包装机-沈阳海鹞真空包装机械有限公司 | lcd条形屏-液晶长条屏-户外广告屏-条形智能显示屏-深圳市条形智能电子有限公司 | 定制异形重型钢格栅板/钢格板_定做踏步板/排水沟盖板_钢格栅板批发厂家-河北圣墨金属制品有限公司 | 磁力加热搅拌器-多工位|大功率|数显恒温磁力搅拌器-司乐仪器官网 | 特种电缆厂家-硅橡胶耐高温电缆-耐低温补偿导线-安徽万邦特种电缆有限公司 | 石英粉,滑石粉厂家,山东滑石粉-莱州市向阳滑石粉有限公司 |