QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2196|回复: 0
打印 上一主题 下一主题

[参考文献] pygame 会用这些函数就够了

[复制链接]
字体大小: 正常 放大
杨利霞        

5273

主题

82

听众

17万

积分

  • TA的每日心情
    开心
    2021-8-11 17:59
  • 签到天数: 17 天

    [LV.4]偶尔看看III

    网络挑战赛参赛者

    网络挑战赛参赛者

    自我介绍
    本人女,毕业于内蒙古科技大学,担任文职专业,毕业专业英语。

    群组2018美赛大象算法课程

    群组2018美赛护航培训课程

    群组2019年 数学中国站长建

    群组2019年数据分析师课程

    群组2018年大象老师国赛优

    跳转到指定楼层
    1#
    发表于 2020-4-28 15:00 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    4 B: i8 s. N  e7 R9 T# D4 @
    pygame 会用这些函数就够了! U( [  R( g! x8 h& y) H3 a
    pygame 会用这些函数就够了! U; Z2 i9 W* L/ Z  v

    8 t! S+ _, B3 g+ r5 p3 d! }" G7 q借鉴了pygame的官方文档和一些中译版,对于我们实际写代码时较常用的一些函数和方法进行了整理
    ) h; v% L8 E$ o
    0 Q# T! D; u& V2 ~# e0 x前15个可以说是较为常用的函数,后面的由于不太常用就有所省略。5 h; ^2 I& ]/ R/ {: N3 `& e

    ' I/ B9 y6 ]0 Z& b" ^本文档只是作为参考,具体使用还请参照官方文档。如果整理的哪里有问题还希望大家指正。这里可以移步个人博客
    ' s1 M& ?+ Y3 o$ |2 F9 p& g% D
    & t# Y$ x& y8 z9 G& D1 xpygame.sprite:基本游戏对象
    ! H: @$ B8 b. H  B2 [$ h. [pygame,event:处理事件
    + Y; ?( A' ~2 g- z8 ~pygame.key:键盘按键
    * n, Q, j% ^4 U) K3 r- B; gpygame:顶层模块
    , u$ s3 R* }, @/ wpygame.time:时间模块
    & u' S# e, x4 ]7 l+ \& ppygame.diaplay:控制窗口显示
    9 [/ T7 ^/ k! Z/ i( L2 Q9 Ppygame.Rect:图像矩形模块' E2 f7 L" g5 b! S
    pygame.Color:颜色模块
    ( @- u. M) f- u  Fpygame.image:图片模块
    * e$ S3 a$ p) L" G% S5 rpygame.Surface:表示图像# n5 r& W9 T& [, t
    pygame.mixer:声音模块% l0 t; p( {. d/ X$ h6 ]; C
    pygame.draw:绘制图像
    0 i; t! K: M" {  \& Qpygame.font:字体模块
    9 E& _; |" a2 K$ Ipygame.mixer.music:音乐模块
    $ Z+ d8 z# h% `7 T. x4 [pygame.mouse:鼠标移动8 D1 w" f! O3 }3 q  ~& |/ j( `# P
    pygame.BufferProxy:缓冲对象0 L- I9 P3 Y* L% @
    pygame.cdrom:音频光盘( E  l5 v+ p- j) ]8 j# @9 a
    pygame.PixelArray:像素数组
    , \5 ^2 A8 [4 c0 kpygame.cursor:鼠标光标9 X2 j( {' L" _4 |7 d6 H7 W+ C7 R1 }
    pygame.scrap:剪切板
    ; ^+ N0 A2 A/ ~0 F8 Epygame.andarray:音频采样# A1 Q# S8 H$ x: E9 e
    pygame.transform:改变形态0 u: K: t& u/ K/ J' L, {
    pygame.tests:测试模块
    ; Y8 y, a4 k8 h9 v7 ]2 X% v/ p6 l7 `pygame.freetype:计算机字体
    ) k  c7 v' n% `pygame.joystick:外接设备1 {$ o8 i( H" p+ D9 i5 a
    pygame.locals:常量定义( t; O8 x! b" m( ]5 m0 W: d
    pygame.surfarray:访问像素: R) w) k( d. `7 M
    pygame.Overlay:图像叠加( c9 j( ^5 J) ^9 M
    1. pygame.sprite
    / Z8 y& }2 t# \! Q( x) i% V& u* B8 P7 f6 o* L0 o
    该类是pygame中处理基本游戏对象类的模块# F# n$ [% E+ f  Z; g

    $ l2 V$ f) \  ~% u) E2 X: H4 cpygame.sprite.Sprite:可见游戏对象的简单基类; F5 W3 Z3 l8 a& }% R& X/ g
    pygame.sprite.Sprite.update:更新状态- ]  |; `$ |/ e4 D5 D8 N$ m
    pygame.sprite.Sprite.add:加到组中* {& B" e0 c: D0 G! E8 X3 k
    pygame.sprite.Sprite.remove:从组中删除
    0 j; N2 Z+ W, g) @7 S8 ipygame.sprite.Sprite.kill:从所有组中删除
    6 b1 o+ n+ ?$ _& p& ^pygame.sprite.Sprite.groups:包含此Sprite的组列表
    $ q( s. m) L' c% Wpygame.sprite.DirtySprite:具有更多属性和功能的Sprite的子类
    1 F; o8 c# |, j5 _* kpygame.sprite.Group:保存和管理多个Sprite对象的容器类' \4 h+ u0 K5 z7 r1 C6 F) V
    pygame.sprite.Group.copy:复制组1 j5 Z9 X- D1 \7 Q0 O& [% u  \( ?
    pygame.sprite.Group.add:添加到该组
    . Y3 U" Q) e9 W% |/ @8 q6 ^pygame.sprite.Group.remove:从组中删除
    1 e: o+ V+ S: _5 @, T6 Upygame.sprite.Group.has:检测是否包含4 W+ d% ?8 |1 Y! D
    pygame.sprite.Group.update:更新状态
      F. i3 x4 y; T: [( Kpygame.sprite.Group.draw:绘制图像
    5 G- b4 \' o+ B* h+ X' w: @% ?pygame.sprite.Group.empty:删除所有
    / K5 }6 X" @* F/ Hpygame.sprite.collide_rect:使用rects检测两个sprite之间的碰撞/ y: B$ F% ]3 k
    pygame.sprite.collode_rect_ratio:使用按比例缩放的rects检测碰撞* d+ p) i/ I! T" u1 L+ r8 w& q% c
    pygame.sprite.collide_circle:使用圆来检测碰撞. ]- f& q6 M8 l7 ?  |# Q
    pygame.sprite.collide_circle_ratio:使用按比例缩放的圆检测- }+ s1 T, k! s2 @0 P
    pygame.sprite.collide_mask:使用蒙版检测碰撞
    1 [6 V2 p1 a( Z1 R& d2. pygame.event
      q5 P" R; P6 \9 x5 M; C7 K% {6 S0 ]* c' X% V- {& y6 M
    该类是pygame中处理事件与事件队列的模块
    , u, }3 U/ q4 u9 \) ?- N) X0 v' ~2 v/ E% T4 G$ V5 D' r7 b7 s
    pygame.event.pump:让其内部自动处理事件# S' P9 s" c8 a0 C! u# y8 N/ X
    pygame.event.get:从队列中获取事件
    ) t3 c, Y6 ]" t  r9 W4 n! {pygame.event.poll:从队列中获取一个事件
    : t& Z3 K7 m) M$ n% p% E+ l/ spygame.event.wait:等待并从队列中获取一个事件
    . \) u0 i' p/ t3 A9 h) npygame.event.peek:检测某个类型事件是否在队列中
    5 X7 c9 K# P& E* Zpygame.event.clear:从队列中删除所有事件
    8 a* h9 e4 T, j9 B5 G. m0 vpygame.event.set_allowed:控制哪些事件禁止进入队列
    * Z2 a5 K6 ?2 Spygame.event.set_blocked:控制哪些事件允许进入队列7 L+ L1 u0 F$ l' K+ b% q: Q+ C) j
    pygame.event.post:放置一个新事件进入队列) Y2 B9 g1 t1 `" s  M8 \+ |2 p
    pygame.event.Event:创建一个新的事件对象
    * f) r; {! C: ]; B' P$ O. C) S事件种类:
    ) J& p! ~/ A! B8 MQUIT:退出
    - e, |" a6 F2 g& ~7 R$ Y& RKEYDOWN:按下按键( M' S0 e# B) f# S) Z
    KEYUP:松开按键. r) @: M* V% G$ ^0 }( C7 I
    MOUSEMOTION:鼠标移动
    / K6 S7 `% r3 j5 t2 b5 M* q其他游戏杆、游戏手柄、追踪球事件
    ! E' p6 h& b+ Z1 L2 q) h9 ~9 O支持自定义事件
    ( z9 }) Y  |2 m0 o4 H) U+ X3. pygame.key% C* D% G. Q1 J2 \7 D: C; C+ c
    ' J. Q& U! S0 T3 g! _! U
    该类是pygame处理与键盘有关的模块6 B0 z7 \' A- B% P" W

    4 y8 T0 k$ W* k  }" Npygame.key.get_focused:窗口获得键盘输入焦点返回True
    / v* ^. ?5 S& J( s2 U7 ~& T: {$ e2 ?pygame.key.get_pressed:获取键盘所有按键的状态
    2 d* m7 q$ R& ^; l5 {4 akey属性:pygame预定义的键盘上的键位
    : r7 M/ b5 R& F8 r/ N8 |mod属性:pygame预定义的组合键  H9 q( e3 s& Z; i5 x
    4. pygame3 y/ S7 Y/ Y2 C# g. D- \
    ; J2 T6 V' o. ?9 p- G" r) }
    该类为最顶层的模块; O1 E6 q, y" P1 r9 a$ L. ~

    4 d5 J! u" H% D/ I& Wpygame.init:初始化导入所有pygame模块+ c+ j4 U  {: ^( A# Z
    pygame.quit:卸载所有导入的模块
    * R$ L  K/ G! G& n5. pygame.time
    0 Z. l/ t# T* J7 M" A
    0 W% }5 ?! J% M, P1 o' D6 P该类是pygame中用于时间管理模块
    $ x& N; e; o9 G6 }& y$ A6 o4 i+ w5 d% q! C+ t9 {
    pygame.time.get_ticks:以毫秒为单位获取时间
    " Q" p* k( M) z4 s" Gpygame.time.wait:暂停程序一段时间
    ) t: O0 Y6 c3 _- C9 N$ A8 q' r/ {' t8 bpygame.time.delay:暂停程序一段时间
    - L) ]! \$ b+ Z1 L9 G3 Cpygame.time.Colck:创建一个对象来帮助或更新时间$ F$ Z& t6 L. z* S& c+ \
    pygame.time.Clock.tick:更新clock对象: S& h! @2 q$ Q
    6. pygame.display
    6 B, ?1 W7 @( c( O/ v& ?# |7 L/ g. x/ I$ w( C/ y; f: w% s" g5 n
    该类是pygame中用于控制窗口和屏幕显示的模块
    % O0 H, R0 L/ X# W8 R9 {2 s* C1 B% }5 q7 j, r- i! d6 g4 X: R
    pygame.display.init:初始化模块1 N9 N$ B9 J; e/ o4 _7 X
    pygame.display.quit:取消初始化
    ! T" s, I9 i- v3 B( Ipygame.display.get_init:判断是否初始化成功0 |( ~$ V$ v8 B
    pygame.display.set_mode:初始化一个准备显示的窗口或者屏幕
    3 Q" f4 e$ Y( E3 F2 p8 H3 L' gpygame.display.set_mode(resolution=(0,0), flags=0, depth=0)
    % r% R4 ^+ l7 m5 Gresolution:传入屏幕的长宽,若为 0 则默认当前屏幕分辨率+ ^" ?  C/ j, @; e5 G
    flags:控制显示类型 可以多种类型用管道符 ‘ | ’ 组合
    0 o" s  `! h4 {4 I2 ppygame.FULLSCREEN 创建一个全屏显示
    # K( Z1 F' \$ G) e3 Upygame.DOUBLEBUF 双缓冲模式& h" l- @9 Q+ Q
    pygame.HWSURFACE 硬件加速,仅在FULLSCREEN下可以使用
    5 t5 F$ l; r) V/ q! T8 A2 Q. e; ypygame.RESIZABLE 创建一个可调整尺寸的窗口
    , `; k- p& z, S: hpygame.NOFRAME 创建一个没有边框和控制按钮的窗口0 R/ S; w+ O% X& e2 M
    depth:深度参数,一般不传值" G: u6 i* C; j4 U; f
    pygame.display.get_surface:获取当前显示的 Surface 对象
      G) P+ T  S" C. Xpygame.display.flip:将完整待显示的 Surface 对象更新到屏幕上! _# z: k; O0 C6 J
    pygame.display.update:更新部分软件界面显示
    8 `( |. q2 v8 |+ }; k$ g# Lpygame.display.iconify:最小化显示 Surface 对象0 [2 k  j! L- j+ [
    pygame.display.toggle_fullscreen:切换全屏显示和窗口显示
    ) |7 Q6 B- o  @pygame.display.set_icon:更改显示窗口的系统头像
    5 A! J& j+ \- `: m$ a0 V3 l$ k+ vpygame.display.set_caption:设置当前窗口标题
    8 g  e1 z; X4 q' I. g0 a8 }: c5 vpygame.display.get_caption:获取当前窗口标题+ J, F( E) X% D) z9 q; L3 t
    7. pygame.Rect" P2 S3 E/ j' x" x/ O! `! N# F
    . E+ X+ P$ Q8 p9 l8 D  S- Z
    该类是pygame中直接操作对象外界矩形的模块
    & a' K+ y$ t" j. W% A. L; B9 {3 `& W4 t$ C8 t6 k# r8 m
    pygame.Rect:创建矩形对象7 S$ \. i* y1 q
    pygame.Rect(left, top, width, height):根据左上角坐标和长宽创建矩形
    ! _! W0 ?- c4 Jpygame.Rect((left, top), (width, height)):根据左上角坐标和长宽创建矩形1 T2 j( s9 ?7 n5 H  O4 r
    该对象具有用来移动和对齐的参数& _" i: Q9 ^8 R4 ~
    x, y! l, {4 Q2 U5 M
    top, left, bottom, right
    5 P" D: n: D* y5 atopleft, bottomleft, topright, bottomright
    " ^- _1 V& V' j( ~& |2 zmidtop, midleft, midbottom, midright
    ( @. g0 z5 O& u& o' Fcenter, centerx, centery6 W" q* _9 M9 b, b/ H9 S* W! i
    size, width, height
    # v' x1 ^, l9 f9 [$ Fw,h
      k! s# g) G1 J- v' h- ~8 \pygame.Rect.copy:复制矩形  h- B4 ?1 e. k" x/ {/ g. J
    pygame.Rect.move:移动矩形- i4 ~4 @* N5 q
    pygame.Rect.move(x, y):传入偏移量
    , w) |) I& q% x$ z; x6 H( zpygame.Rect.contains:测试一个矩形是否在另一个矩形内部,传入矩形对象
    , |; E/ X5 C: {2 b* Bpygame.Rect.collidepoint:测试一个点是否在矩形内; M  g; v# ?- b7 N
    pygame.Rect.colliderect:测试两个矩形是否重叠6 b# v$ J7 [! v( i
    8. pygame.Color4 y+ E, P. p. W
    4 s0 E. n1 |, ~
    该类是pygame中用于描述颜色的模块
    4 R* Y) p6 h7 }0 `3 h, N$ \4 u( d$ X. i1 g& S
    pygame.Color:返回一个颜色7 }% ?& y% M2 ]! X  {
    Color(name):传入名称
    / n, z7 s* R% c4 g/ j; MColor(r, g, b, a):传入rgba参数
    1 @# F3 m2 ]+ R+ X* ~9 m% KColor(rgbvalue):传入rgb参数# a% s% v: k8 i& M4 V* H( r9 ]+ D, O
    pygame.Color.r:获取或设置其红色值3 y2 }  U# G( U# v- F  f
    pygame.Color.g:获取或设置其绿色值0 `0 i9 @  }+ O  n( j! d
    pygame.Color.b:获取或设置其蓝色值
    . Q7 V' f( ]- \0 @7 Ypygame.Color.a:获取或设置其alpha通道值
    ; R5 H  \. j6 a2 p- `$ d0 rpygame.Color.cmy:获取或设置其 cmy (青、洋红和黄) 值
    0 \1 D# |. v& Z; v* F4 k/ B+ n- `pygame.Color.normalize:返回标准化 RGBA 值
    : h* _+ _3 h0 p, W. q8 ?9. pygame.image
    - z5 ]* g* y2 y9 c- g
    ! {2 a3 }9 [0 x: K1 a. B该类是pygame中处理图像传输的模块
    5 M. s  J7 k! Z7 |% X$ f6 T
    4 ?. z" W! M' L9 a, p9 ~pygame.image.load:从文件中加载新图像
    9 y7 }; Z/ X( ?& e& E传入文件路径和名称
    $ m5 F$ x3 l+ d( }: f+ V支持 JPG、PNG、GIF、BMP、PCX、TGA、TIF、LBM、PBM、XPM格式( G% p1 E  a. p, Y7 k- [1 J1 @
    pygame.image.save:将图像保存到本地
    $ ~) O7 y7 `  ?8 v" Z% f传入 Surface 对象和路径
    ' q$ v6 M3 M& e7 b; \( @支持BMP、TGA、PNG、JPEG格式
    2 D  x2 B) N! F10. pygame.Surface
    - m2 W, q: f! ^% {3 G7 d; I: E$ G% l/ O9 }: m7 _0 ~
    该类是pygame中用于表示图像的模块( k0 h0 {* u$ X1 y

    + r* r9 B0 d- U. N! g: @& Kpygame.Surface:创建对象
    6 M6 E8 c8 J5 z4 gpygame.Surface((width, height), flags=0, depth=0, masks=None)
    9 H- L- `! L8 Mpygame.Surface((width, height), flags=0, Surface)
    9 d  b) G# U. W" ^  t+ R/ l6 M4 L6 lpygame.Surface.blit:将一个图像绘制到另一个上方, u  g2 s+ t4 l2 a9 N4 L
    pygame.Surface.convert:修改像素格式
    1 r. u3 w9 j; T7 a" zpygame.Surface.copy:拷贝对象
      g) z& v! c& j6 z3 tpygame.Surface.fill:使用纯色填充对象
    $ ?: Q# [; J, d( opygame.Surface.scroll:移动对象
    / E2 j* n; {( B# j3 x+ Y/ I( V11. pygame.mixer
    ; {6 l. C0 f& q4 H# M; t7 O2 Q( |0 |' v2 k! l
    该类是pygame中用来加载和播放声音的模块,默认有8个声道
    ! k/ r7 p5 `' g) a1 W
    : z: i2 j# }3 _/ ?3 a$ E4 g2 qpygame.mixer.init:初始化模块
    9 w, W0 R+ ]6 V! \5 y8 fpygame.mixer.stop:停止播放所有声道$ N" j8 ?1 o" @( W& U
    pygame.mixer.pause:暂停播放所有声道5 H( k# O2 T6 P8 l9 j. b. g/ |
    pygame.mixer.unpause:恢复暂停播放所有声道
    ' b7 K6 E% |3 dpygame.mixer.fadeout:停止前淡出所有声音
    ! m3 C) O! {' A传入时间参数,设置淡出时间
    ( F1 H% t1 b1 V$ ]12. pygame.draw
    7 J/ d0 K7 u% K; O! c6 j  @6 g0 s! K8 N3 V
    该类是pygame中用于绘制图形的模块! M+ m4 V6 B6 ?8 L. i, X

    3 N- }3 y! ~3 `8 Q8 k' _! gpygame.draw.rect:绘制矩形
    - m: M+ b% Q* d$ [; X8 d1 {pygame.draw.rect(Surface, color, Rect, width=0)) j# Z$ W1 G% D) k/ ]! Z
    Surface:绘制在 Surface 对象上) P* `- A" A$ @
    color:传入 RGB 三元组或 RGBA 四元组
      H$ p8 [/ x4 Owidth:指定边框宽度,0 表示填充该矩形/ k9 |& d7 K$ A5 C6 A
    pygame.draw.polygon:绘制多边形0 Q/ t/ F+ I# L5 B  H# U# n
    pygame.draw.polygon(Surface, color, pointlist, width=0)  O+ c. o6 |9 U0 S8 D. d& D7 I
    pointlist:指定多边形的各个顶点
    8 K8 p. P8 v' m+ J8 cpygame.draw.circle:绘制圆形
    ' O* W7 _# ?- _# Epygame.draw.circle(Surface, color, pos, radius, width=0)
    : e2 t0 W3 j1 }/ vpos:圆心位置
    1 i$ E8 R$ t5 Fradius:半径( z, N4 I: p9 |, i0 ~
    pygame.draw.ellipse:绘制椭圆1 g- f! Q& q* E
    pygame.draw.ellipse(Surface, color, Rect, width=0)1 C$ I( ~8 w3 W+ F8 W' `- F3 p4 q( N& k
    Rect:椭圆外切矩形& h1 {% b4 L$ |$ _
    pygame.draw.arc:绘制弧线' ~3 X2 s5 b9 p: o& m0 z2 }
    pygame.draw.arc(Surface, color, Rect, start_angle, stop_angle, width=1)0 I! u" Y& {7 _2 M+ D
    Rect:弧线所在椭圆外切矩形
    ! s3 ~' Y7 F) f1 k/ x8 Yangle:弧线开始和结束位置
    # n1 Q8 H0 m  Vpygame.draw.line:绘制线段
    2 N; n9 C9 i3 vpygame.draw.line(Surface, color, start_pos, end_pos, width=1)  n  L; Q4 E' e- p, L* F
    pygame.draw.lines:绘制多条线段
    + D4 b8 r# Y7 K- F0 vpygame.draw.lines(Surface, color, closed, pointlist, width=1)
    : x" z3 q* a( w. j, k2 [pointlist:一系列点" N& q1 g8 t- T& g2 E
    closed:若为 True 则绘制首尾相连
    - t7 _9 j; U" ]13. pygame.font
    5 c; ~) P9 q. c+ C' \
    + @3 ]2 @5 g, W, N该类是pygame中加载和表示字体的模块
    6 N5 d; ~: k5 l/ N" x; d7 o  B* _" d4 \. g+ n8 J+ o
    pygame.font.init:初始化/ x( O, \* \) o6 M" B* o5 K
    pygame.font.quit:退出
    - y( _* g' V3 o9 c6 A. s+ b1 vpygame.font.get_init:判断是否初始化
    6 P# L* I5 b; B: S5 H+ vpygame.font.get_font:获取所有可使用的字体+ E1 q/ D6 @1 d, s
    pygame.font.match_font:在系统中搜索字体* V0 ?" E" B8 P1 K0 T: u, V
    pygame.font.SysFont:从系统字体库冲创建一个对象
    , t3 L$ z  j+ M) B/ O9 N! Ipygame.font.Font:从字体文件中创建一个对象
    3 w. k3 z* V9 E  fpygame.font.Font.render:在新的 Surface 对象上绘制文本% ~$ o& s7 {0 G! G* D# c$ C
    pygame.font.Font.size:确定字体大小
    / _% ~2 u1 m$ u" U, zpygame.font.Font.set_underline:是否加下划线8 h# e  h( n; v3 O8 T) }
    pygame.font.Font.set_bold:是否加粗* S/ G8 _0 N% o; E( x
    pygame.font.Font.set_italic:是否设置为斜体  s# W& m% e0 @- P' U& v
    14. pygame.mixer.music
    2 b8 o! {- G6 \/ C: u$ y! \4 w$ S2 m2 u' b. k! b
    该类是pygame中控制音乐播放的模块,对于MP3格式的支持受限,建议OGG格式0 s. K  |& Z$ P3 l4 v
    * j5 W4 a8 P: Z" Y
    pygame.mixer.music.load:载入一个音乐文件3 ^  ~" @' {7 x
    pygame.mixer.music.play:开始播放/ c  Y4 {6 o" ~' u
    pygame.mixer.music.play(loops=0, start=0.0)5 V' o& U: a: {+ X( I9 s
    loops:控制再循环几次,若为3则一共播放4次
    2 M' x+ V& ~! _+ ?! N& {start:控制从哪里开始播放,单位为秒/ a# ]1 {3 I& }  s! M
    pygame.mixer.music.rewind:重新开始播放
    6 l( ^- k4 Z" ]: Q/ kpygame.mixer.music.stop:结束播放
    0 E! L: j+ G- g+ H, Z3 F$ a3 Rpygame.mixer.music.pause:暂停播放
    , ], N! d8 t6 t$ ~+ M0 Wpygame.mixer.music.unpause:继续播放
    - R6 J$ _0 b& m$ `pygame.mixer.music.set_voiume:设置音量
    4 J  |( l  U$ u+ t; k5 bpygame.mixer.music.get_volume:获取音量
    & e, y) [' ]$ epygame.mixer.music.set_pos:设置播放位置
    ( d7 `/ m/ s# {2 S6 D# H& _传入一个浮点数,控制从什么时候开始播放
    2 E' h$ a, o. Epygame.mixer.music.queue:将一个应用文件放入队列,排在当前播放的音乐之后
    " a( @( {3 L7 o; Qpygame.mixer.music.set_endevent:设置播放结束事件
    ) t! F* q5 F5 b) b$ s9 l) apygame.mixer.music.get_endevent:获取播放结束事件
    - o- B) g% @1 H15. pygame.mouse
    2 m! `* [2 O* \  v" e( x
    - a% S$ f2 a  q7 l1 }% g该类是pygame中与鼠标操作相关的模块7 o% {7 R; J- N8 A1 P+ _
    1 F! R+ u# ^5 s+ |
    pygame.mouse.get_pressed:判断鼠标按键是否被按下& g( y! s. L/ U/ w1 A6 a
    pygame.mouse.get_pos:获取鼠标光标位置% N2 S6 t5 A& p2 B
    pygame.mouse.set_pos:设置鼠标光标位置4 L/ @: X* f3 ?- a
    pygame.mouse.set_visible:设置鼠标光标是否隐藏$ d1 [: r) A# L0 H* y( p2 P2 v
    pygame.mouse.set_cuisor:设置鼠标光标在程序内的显示图像1 U+ m/ T0 \. m6 w. ~! ^( }5 e1 i
    pygame.mouse.get_cursor:获取鼠标光标在程序内的显示图像0 M. q6 F4 l& v0 M0 h
    16. pygame.BufferProxy
    ! w2 w; v- ]8 d. s" O7 x2 h6 f
    / r5 }! z; S! x1 ^8 Z- m该类是 Surface对象通过数组协议导出的一个缓冲对象) i' \7 b: e+ f: c( j1 F8 @# H
    % s8 m" {) C6 E# A
    pygame.BufferProxy.parent:返回该 BufferProxy 的 Surface 对象, 或者调用 BufferProxy 的对象
    1 }' r, o3 [* O1 ~( X: Opygame.BufferProxy.length:返回缓冲区的长度,单位是字节。类似于len字段) @/ v4 E6 o" ]
    pygame.BufferProxy.length:将缓冲区的数据拷贝并返回,为str或bytes对象
    + }6 s# w/ d. {pygame.BufferProxy.write:将字节写入缓冲区
    8 o& Q. W  e9 v6 c5 {17. pygame.cdrom
    * m* U7 y! M1 o6 B* n1 l+ I) Y' d& `8 {; Q- O1 h* D
    该类是pygame中使用音频cdrom的模块, cdrom 即 Compact Disc Read-only Memory 只读光盘
    % A  K/ a0 t8 c- v/ J
    7 }1 S5 H! c/ a& }+ Q# }: Wpygame.cdrom.init:初始化模块
    " ~, t) X( E4 h; u2 Qpygame.cdrom.quit:退出模块
    ' Z; M% G% D. u6 `. w2 }1 \pygame.cdrom.get_init:判断是否初始化成功,成功返回 true5 ]0 {( [$ Y6 {3 x
    pygame.cdrom.get_count:返回 cd 驱动器的个数6 m, r! F5 }7 s, O
    pygame.cdrom.CD:管理驱动的类, L, p, [8 @8 p' N" E% }& \+ {
    pygame.cdrom.CD.init:初始化
    % v# e: i: Y* y4 a( Ipygame.cdrom.CD.quit:退出
    ' x. i; ^& h$ O6 Y. Y2 A% jpygame.cdrom.CD.get_init:判断是否完成初始化
    % d' V, l8 d# u, _2 Wpygame.cdrom.CD.play:开始播放
    . O7 o( A' a6 K, j% l+ Fpygame.cdrom.CD.stop:停止播放; Q% P& i: g# \! l
    pygame.cdrom.CD.pause:暂停播放, R- a) c& _, q
    pygame.cdrom.CD.resume:恢复播放+ ?% q8 a+ l7 Y, P' F8 P7 |6 i! |
    18. pygame.PixelArray
    ! E7 a( t& g. ]( Y$ V' d! z+ t  N- ]9 \8 |) F- }
    该类为pygame中直接处理访问像素的模块6 a0 |0 I, ?9 o* N) {" ~( d

    / [7 k& F# ~4 `4 O( i$ B0 z5 mpygame.PixelArray.surface:获取使用的 surface 对象
    * [0 [3 r. e$ ?! z$ s0 L/ ~2 Kpygame.PixelArray.itemsize:返回像素数组项字节大小1 Z; W2 H+ V- w
    pygame.PixelArray.make_surface:根据当前 PixelArray 创建新的 surface 对象
    8 j3 Y9 d% J5 A( i* Fpygame.PixelArray.extract:从 PixelArray 中提取传递颜色' u  `' P0 Y; Y7 I* W+ L
    19. pygame.cursors* m2 b% L0 X; N
    6 r3 V; O1 s9 z
    该类是pygame中使用光标资源的模块
    - k- f/ R& }; S# X: ]4 f/ v- ?
    * r4 a6 t1 v1 ^6 apygame.cursors.compile:又纯字符串创建二进制光标数据) e5 h' W! ^2 |+ u& p$ J
    pygame.cursors.load_xbm:由xbm文件载入光标数据) ?: A. m. W; l  Z
    20. pygame.scrap
    # e7 N0 U$ Z' K
    9 k9 i* i% C1 G, B该类是pygame中用于支持剪切板的模块
    ! N4 o" @8 o* |& n  e: Q6 y3 @/ p+ R
    pygame.scrap.init:初始化
    5 b! l6 |9 W0 Rpygame.scrap.get:从剪切板获取指定类型数据
    ' h2 J3 V. O$ _( F* a% Upygame.scrap.put:将数据放入剪切板
    : b7 D$ c$ m% D" B" O: u8 q9 u- v: |pygame.scrap.contains:检测是否获得
    % m, m- Y4 u5 u" b) q( A; V- d$ g7 F21. pygame.sndarray) A! U3 C* P# \; w: f6 @
    * l# F( _  p+ O6 D& s
    该类是pygame中访问音频采样数据的模块
    : p: H  A/ X* n$ z# P% R) g+ X
    6 ?2 K8 A, ?2 o( [# upygame.sndarray.array:将一个音频采样复制到一个数组
    8 S6 Z+ V; b! E2 B7 _% Mpygame.sndarray.make_sound:将一个数组变成一个音频对象
    ! }0 t; ]8 g  [) K  o, w22. pygame.transform# f0 a* I! q0 M% x2 g+ A0 y
      w% T9 v% S3 V
    该类是pygame中用于改变surface形态的模块
    8 d% P5 D; c' U- i
    - a8 W" L  f4 H! e' E0 Q5 Ppygame.transform.flip:垂直和水平翻转& |$ w3 G0 u: i
    pygame.transform.scale:调整大小到新的分辨率
    , a" H: u; t. b  E8 Tpygame.transform.rotata:旋转图像
    , l" a7 F( f) Y  z. u! o23. pygame.tests
    / K. E6 S! z' c( F8 ~: n. _- U
    3 h+ ?6 j' ~' q8 I% F该类是pygame中用于单元测试的模块) J% N; S( u; m$ F0 P- v
    6 T: a* ^7 G9 M- L" p$ o, X
    pygame.tests.run:运行测试套件& B# V' S! U. {" e1 D4 h- K; R# b) g
    24. pygame.freetype3 }+ e$ @  |# R8 c2 g5 Y
    5 B0 v: G" Z; k
    该类是pygame中用来加载和呈现计算机字体的模块,不常用! [4 M- L- Z9 Y3 j5 o: m
    1 z: _; X% u1 ]: K8 A5 B3 ]. {1 W
    25. pygame.joystick# k- ?, i! x* ]. b( f

    : p9 y' [+ j$ I: ]8 S该类是pygame中与游戏杆、游戏手柄、追踪球交互的模块,详情参考文档
    ) x8 L/ r, J1 Z2 V2 P. Q2 k
    / _) @# A  h- I4 t+ ]26. pygame.locals
    % r# w: [7 H, s) ^# W( K& A& D5 d2 p& ?0 \3 s- E. o3 d
    该类是pygame中定义各种常量的模块! |8 @1 ~9 D( \  q, g8 h* Z

    - N! g; T1 f+ Z7 ]: \1 r: S0 N2 e3 R27. pygame.surfarray2 ~+ v6 {/ A: w& W7 G3 |
    + i. ]3 v& l- l1 d
    该类是pygame中使用接口访问 surface 像素的模块,不常用: ^* a- ^: t; x" F

    / ]- L9 C) [0 e# p  P' U/ J28. pygame.Overlay
    $ T* N. O( y5 z+ P' S5 _
    7 O# u  f3 t1 J" J该类是pygame中用于处理视频叠加图像的模块,不常用4 L" K3 Y5 W( ?4 }; Y/ ^" e
    ————————————————
    : D  G: u2 L! f- \  S. X版权声明:本文为CSDN博主「丁生呀」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。+ C4 E% f( m; m& L6 j! v
    原文链接:https://blog.csdn.net/qq_43733805/article/details/1058092416 S) d+ g. g6 B1 A4 \9 Q6 D
    7 n; S3 q9 ?! F
    . k; F% y& e( b) a, H) L8 I1 z( X
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-6-16 20:17 , Processed in 0.427415 second(s), 51 queries .

    回顶部