QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 2303|回复: 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

    , G1 q8 y  ~% npygame 会用这些函数就够了/ T7 W* L  R. H. W, p+ \* c9 y, b/ h
    pygame 会用这些函数就够了
    ' |- ]% D8 J3 E# z% j0 u% m. G( J4 w9 L$ X+ v  M' H( V
    借鉴了pygame的官方文档和一些中译版,对于我们实际写代码时较常用的一些函数和方法进行了整理
    - V: w5 k  t7 V. S; |4 P1 x' q3 ~1 h: Y# f& W0 k3 A
    前15个可以说是较为常用的函数,后面的由于不太常用就有所省略。* z& u+ {- O- u5 b" N

    . k% b. h. v+ e& f- F' @' C本文档只是作为参考,具体使用还请参照官方文档。如果整理的哪里有问题还希望大家指正。这里可以移步个人博客
    : h! r' `5 M- a
    0 G8 M/ C' l; ~1 l  mpygame.sprite:基本游戏对象' V2 r* h# S6 {1 Y8 x2 O& y. R
    pygame,event:处理事件" O8 Y* F" `7 l6 t- a3 s
    pygame.key:键盘按键+ Y) K+ y) K, X: V3 L6 s, h, b
    pygame:顶层模块
    3 D8 H: D( y2 `5 X; A7 c9 s' ?pygame.time:时间模块( P. v! s9 [3 n$ O
    pygame.diaplay:控制窗口显示5 F9 F4 A. l: U0 |# X9 [
    pygame.Rect:图像矩形模块
    9 w3 v4 ]- a9 Y3 v; wpygame.Color:颜色模块
    / G3 ]8 ]2 O$ r# V3 z4 gpygame.image:图片模块/ P. X5 N8 C/ n% o
    pygame.Surface:表示图像
    3 |7 \# `  j  x+ R: X& }$ @# G% opygame.mixer:声音模块" D/ Z, L/ a: O# l
    pygame.draw:绘制图像
    3 ^5 ]0 K2 b3 g0 b1 }; b# Tpygame.font:字体模块9 {; ~! P4 ?- L  A
    pygame.mixer.music:音乐模块
    # r+ D  R9 Z9 S( z+ E) f8 l1 q2 ]pygame.mouse:鼠标移动
    , `* d; j/ g+ c5 S; W6 u; Z3 Zpygame.BufferProxy:缓冲对象9 M6 {" H8 A( S; `& b
    pygame.cdrom:音频光盘
    * R4 W; r  T3 I/ Jpygame.PixelArray:像素数组
    1 y" _1 K, k) F8 N! J4 I4 |, npygame.cursor:鼠标光标
    * S! b$ M* ^- z: z( Epygame.scrap:剪切板
    0 G! {+ T2 K2 U0 L: J) y; g' G6 Rpygame.andarray:音频采样8 v& a& z  G2 ~0 x' S8 ^' x
    pygame.transform:改变形态3 t& t: A6 z) o6 [, \3 E3 P1 e  o
    pygame.tests:测试模块# G) t# X2 U4 V1 ^: i( k4 M: N
    pygame.freetype:计算机字体
    % l5 y. |: E/ a2 Y9 f2 S6 @% e1 Epygame.joystick:外接设备
    9 p3 ^" t0 [% y1 w" Apygame.locals:常量定义
    ) P0 f+ l* |5 |% z* b# y! Tpygame.surfarray:访问像素
    ! B/ [' q7 i2 y8 r9 n/ I5 ?pygame.Overlay:图像叠加
    ) O; ~+ u5 ]/ f4 N, O1. pygame.sprite  d; @5 ^& {2 O& y8 A2 j1 L7 R- l! Y

    $ W, \6 q& B/ m1 r  L$ Y该类是pygame中处理基本游戏对象类的模块
    & P* B1 @' z  A1 R0 c6 d; ^6 n/ \- |# g. S
    , M) l+ H. `& h; vpygame.sprite.Sprite:可见游戏对象的简单基类
    4 ]: J" s& A2 g% B  C5 l/ Apygame.sprite.Sprite.update:更新状态  l7 T1 A# u3 l
    pygame.sprite.Sprite.add:加到组中
    . o- k% {# H! X4 \; c* O6 npygame.sprite.Sprite.remove:从组中删除0 Z) w) {; X/ R# h. y
    pygame.sprite.Sprite.kill:从所有组中删除
    " k' B4 v% y+ i+ e% opygame.sprite.Sprite.groups:包含此Sprite的组列表
    - Y+ b% `" ?$ N$ J1 n; Qpygame.sprite.DirtySprite:具有更多属性和功能的Sprite的子类" r/ }  P6 b/ P) y0 a
    pygame.sprite.Group:保存和管理多个Sprite对象的容器类; Z* L+ k) H" w# v
    pygame.sprite.Group.copy:复制组) _; @8 B: D2 H
    pygame.sprite.Group.add:添加到该组
    " j3 t8 p7 E6 ppygame.sprite.Group.remove:从组中删除
    3 z: _; x$ ^5 O" q; spygame.sprite.Group.has:检测是否包含
    ' y+ @! l! `  G7 Zpygame.sprite.Group.update:更新状态% k: P3 `4 [1 H, _. l$ e4 b5 Y
    pygame.sprite.Group.draw:绘制图像8 U. L! \2 i* a
    pygame.sprite.Group.empty:删除所有3 W5 l9 L) t! }! ^+ A" G
    pygame.sprite.collide_rect:使用rects检测两个sprite之间的碰撞* L! v' l: f/ E2 f% E3 r
    pygame.sprite.collode_rect_ratio:使用按比例缩放的rects检测碰撞
    # m, V' U% s  J# @% {* E9 Lpygame.sprite.collide_circle:使用圆来检测碰撞
    0 T$ j! R$ {+ P) [) y# `, e0 ]+ Rpygame.sprite.collide_circle_ratio:使用按比例缩放的圆检测
      Q6 y+ z; w0 C9 a, g6 opygame.sprite.collide_mask:使用蒙版检测碰撞
    ' H3 \. D5 g1 w" E  l2. pygame.event
    ) E, K* s; B; V3 F# Y. `: |' i" g& D+ L: z
    该类是pygame中处理事件与事件队列的模块
    . Q* A) h( V0 w2 [7 g+ T7 e) @+ R6 ?& a1 l2 ~
    pygame.event.pump:让其内部自动处理事件
    / e1 r/ j% S& F4 apygame.event.get:从队列中获取事件# m7 ]# O+ ^) I9 ?; q, l
    pygame.event.poll:从队列中获取一个事件
    9 @$ O. d- F8 Q$ h+ z; |1 S; vpygame.event.wait:等待并从队列中获取一个事件
    3 a! }( Q. {; ~pygame.event.peek:检测某个类型事件是否在队列中- ]0 {" l  M2 i# N5 y) X) Z
    pygame.event.clear:从队列中删除所有事件* _8 h1 h! ?. m
    pygame.event.set_allowed:控制哪些事件禁止进入队列
    % n9 s! H- Q+ q, A: g$ p0 Jpygame.event.set_blocked:控制哪些事件允许进入队列4 p  r) }5 E$ R: B# P$ S
    pygame.event.post:放置一个新事件进入队列- e& \1 |0 P3 V
    pygame.event.Event:创建一个新的事件对象
      g+ i0 |; q3 p; S0 X事件种类:; g$ v+ g; X: `
    QUIT:退出7 {* D0 h# t' k( L' j
    KEYDOWN:按下按键* C; H( X" b/ p0 b+ a
    KEYUP:松开按键" W, G; o* B$ K* b' X) s, B
    MOUSEMOTION:鼠标移动8 K# o) B9 [5 j  m: X4 l7 _4 {
    其他游戏杆、游戏手柄、追踪球事件0 z7 M8 k6 o- O* x& W' E% w
    支持自定义事件
    - w* p  g2 w: B0 a% `; W6 O& P3. pygame.key9 o' ~: r8 }- c0 A: T0 K, B
    % x+ m9 R( w" Z+ g6 c* K( `# J3 ]
    该类是pygame处理与键盘有关的模块# b9 K( M# b8 `* r

    ; }; j7 X1 [  b/ O1 T9 n& s+ \- apygame.key.get_focused:窗口获得键盘输入焦点返回True
    + S9 ]$ t) K6 epygame.key.get_pressed:获取键盘所有按键的状态
    ) D+ ~; P2 a2 @1 b8 X  skey属性:pygame预定义的键盘上的键位
    2 Y7 L# l. M5 d6 V2 cmod属性:pygame预定义的组合键$ T) }4 R9 K  X  t) r3 `( o
    4. pygame' [, O6 L: Y4 Y7 i. a% ^
    3 G! d) v% A0 r
    该类为最顶层的模块& H$ I. N& w+ e# \/ @& K
    ( i2 g( d6 u4 ]. g
    pygame.init:初始化导入所有pygame模块9 ~2 D- q$ }% x' S5 m5 b8 w
    pygame.quit:卸载所有导入的模块4 I6 j! V, t3 m% l/ ]* o/ y
    5. pygame.time
    $ X9 o& ^% c& w0 H; c' R' m, C; Z, T) _) ?6 o
    该类是pygame中用于时间管理模块
    , N0 i1 n7 }0 l4 O% V4 x
    , ~- @. K' U# C7 P, K& Bpygame.time.get_ticks:以毫秒为单位获取时间. ]: l. C7 U' m1 j, W
    pygame.time.wait:暂停程序一段时间( R0 u4 a" K7 g* R4 E
    pygame.time.delay:暂停程序一段时间  |7 R9 ?! E3 X  r/ S
    pygame.time.Colck:创建一个对象来帮助或更新时间
    4 e! k3 v# {% v, X4 cpygame.time.Clock.tick:更新clock对象
    5 b+ s- U$ u( w. X; b' h: w8 G6. pygame.display
    $ m& u3 b' S* H" C2 `
    4 Q; x- b/ u5 P! y6 h1 |该类是pygame中用于控制窗口和屏幕显示的模块
    - }0 m4 V( Q4 X/ W) I
    " a! i& Z* t8 _! m8 S  v2 u5 vpygame.display.init:初始化模块
    . |# Z: M4 C( |& spygame.display.quit:取消初始化7 Y* w& \/ S$ _
    pygame.display.get_init:判断是否初始化成功
    6 ^3 C2 x1 m$ l$ d" Hpygame.display.set_mode:初始化一个准备显示的窗口或者屏幕" _4 Z7 i8 _% c0 h% C# t; Y9 w
    pygame.display.set_mode(resolution=(0,0), flags=0, depth=0)
    ! K, k% P- v1 k5 f4 jresolution:传入屏幕的长宽,若为 0 则默认当前屏幕分辨率) B; V& v  i! D8 t5 v+ T
    flags:控制显示类型 可以多种类型用管道符 ‘ | ’ 组合
    7 E# O! r. T% D7 z& Bpygame.FULLSCREEN 创建一个全屏显示
    9 N$ L4 {. w* hpygame.DOUBLEBUF 双缓冲模式
    . `  R: s* d$ ]  `& y5 upygame.HWSURFACE 硬件加速,仅在FULLSCREEN下可以使用% @, |+ L- e0 d9 t- K( H! P; \$ D
    pygame.RESIZABLE 创建一个可调整尺寸的窗口
    ' D, J* ^2 G* upygame.NOFRAME 创建一个没有边框和控制按钮的窗口
    " s5 w& S1 I+ v6 k1 xdepth:深度参数,一般不传值: Y7 S1 U& h; e
    pygame.display.get_surface:获取当前显示的 Surface 对象4 y1 v  p; S! B0 ]( Y* R; |
    pygame.display.flip:将完整待显示的 Surface 对象更新到屏幕上( v5 p( X. Y3 H( W7 \7 b
    pygame.display.update:更新部分软件界面显示
    # Y! q3 s( |, B- E2 D3 ipygame.display.iconify:最小化显示 Surface 对象
    ( c0 V- j* \+ ^2 A0 qpygame.display.toggle_fullscreen:切换全屏显示和窗口显示
    1 J  B) G0 O( S4 J. N/ A+ kpygame.display.set_icon:更改显示窗口的系统头像
    ( ?8 A4 q. o- u1 rpygame.display.set_caption:设置当前窗口标题
    1 F2 b0 {, d* V/ V% gpygame.display.get_caption:获取当前窗口标题
    ! C2 q+ y- g' d7 R* w: [5 f7. pygame.Rect
    6 K  D* ^2 W5 Y! y$ j0 |* q- V. w% Z5 U
    该类是pygame中直接操作对象外界矩形的模块
    $ a* z  u4 \5 B: G/ D! W' \) S9 e( j$ c- x1 x3 {* ~
    pygame.Rect:创建矩形对象
      _8 f0 J' \1 h/ G* Z5 ppygame.Rect(left, top, width, height):根据左上角坐标和长宽创建矩形
    8 W$ a1 @+ J4 h3 S% kpygame.Rect((left, top), (width, height)):根据左上角坐标和长宽创建矩形
    6 B1 Z1 ]* b/ ?( O该对象具有用来移动和对齐的参数
    1 m; Q7 ^4 ?8 U) u. Y* n( c1 Tx, y3 c7 F( i& H' u2 [! B
    top, left, bottom, right
    5 _7 t/ C1 f; @% {topleft, bottomleft, topright, bottomright( z- O* L6 i" {. |) @1 M; R. B
    midtop, midleft, midbottom, midright
    6 Z/ ~4 a* v$ V( c% \center, centerx, centery
      i: `0 G* W+ J' O. k) Psize, width, height, b% o8 A$ z" h, C8 l6 G3 s2 A
    w,h
    7 L/ e$ V0 E* E: x/ r$ @pygame.Rect.copy:复制矩形' y6 u1 @8 m* k, ~  ^5 D
    pygame.Rect.move:移动矩形8 r$ y9 U  J% {' l
    pygame.Rect.move(x, y):传入偏移量. I' ]1 F& _% W" i* I
    pygame.Rect.contains:测试一个矩形是否在另一个矩形内部,传入矩形对象
    ! E/ i" U2 a# F6 x9 `- I$ `pygame.Rect.collidepoint:测试一个点是否在矩形内
    ( T% S5 O% w' H- A" y, C& {pygame.Rect.colliderect:测试两个矩形是否重叠2 y% }2 g9 N% Q: ~
    8. pygame.Color
    7 M, u0 y# _" y1 Z* w( g, c" x7 l3 {6 ]" F; K4 U0 [5 h. ?
    该类是pygame中用于描述颜色的模块
    3 W% T) P8 M. I6 T4 P, K& j, E5 V9 y
    pygame.Color:返回一个颜色, ?. M' m' ?2 w( R. [( E( `* q; e
    Color(name):传入名称3 |, w% G  v0 ?0 M2 `
    Color(r, g, b, a):传入rgba参数
    / ^' {. M& ?+ N4 M5 MColor(rgbvalue):传入rgb参数
    1 b) E; O0 B: d2 Spygame.Color.r:获取或设置其红色值
    - i( G# C" W* }/ Apygame.Color.g:获取或设置其绿色值8 I) [1 |( T9 o0 n
    pygame.Color.b:获取或设置其蓝色值
    3 j) M& u- }# J3 G$ F: @/ Jpygame.Color.a:获取或设置其alpha通道值* E! J0 e2 C/ E" f/ q* }
    pygame.Color.cmy:获取或设置其 cmy (青、洋红和黄) 值7 \0 {+ m1 E; q! O/ m2 d
    pygame.Color.normalize:返回标准化 RGBA 值
    & \8 D, s' }. A* j& V9. pygame.image4 [. r8 x1 q& n
    ) \  \$ Z/ h$ t& O: o
    该类是pygame中处理图像传输的模块# G; R' n& T3 ?5 l5 p

      j9 M$ [, |) u) c0 w1 q) |/ g1 vpygame.image.load:从文件中加载新图像
    ; J8 \$ A/ @5 N# u  l9 }5 o* V$ R传入文件路径和名称
    9 V  ~. z# `* R$ F支持 JPG、PNG、GIF、BMP、PCX、TGA、TIF、LBM、PBM、XPM格式0 x; M  U9 u3 z: H
    pygame.image.save:将图像保存到本地
    0 X# w( q. q3 e8 ]! u, \9 Q* u& P传入 Surface 对象和路径
    8 T! v9 i; p% O5 l, x2 h$ e" N# V支持BMP、TGA、PNG、JPEG格式6 U' K) e, D) z+ z; v% ~3 W
    10. pygame.Surface
    6 m3 ]7 q7 p' A6 J& U8 ]
    ' {/ F. E7 ]1 r9 b  S+ P该类是pygame中用于表示图像的模块+ t, g2 c$ V- J! ]+ p! @9 K& f$ P+ O

    . R0 d% `' m5 l0 u, ?; A- Kpygame.Surface:创建对象
      h) Z+ h+ C" Epygame.Surface((width, height), flags=0, depth=0, masks=None)
    0 l& ^2 b) m7 M: A0 `pygame.Surface((width, height), flags=0, Surface)  j" O4 l6 l& T$ k2 F
    pygame.Surface.blit:将一个图像绘制到另一个上方' n. x: F- _1 J& }
    pygame.Surface.convert:修改像素格式
    ) H* ^& T) e, a2 D" bpygame.Surface.copy:拷贝对象
    7 A( G5 `  A9 @( X7 ^- npygame.Surface.fill:使用纯色填充对象
    ; M* X6 r0 ^! ?- j  F$ Vpygame.Surface.scroll:移动对象
    : F- J* N; X9 f11. pygame.mixer+ P+ P6 a! O9 \( x4 f

    9 d: p. Z8 a% A( k& B2 M% ?该类是pygame中用来加载和播放声音的模块,默认有8个声道3 M& u8 M2 S/ l

    3 `* p6 _6 a; b- A) g* L# D- [pygame.mixer.init:初始化模块9 v0 \! u. B7 E0 ^7 @8 N3 E1 U
    pygame.mixer.stop:停止播放所有声道2 j7 j+ r2 z/ E. @
    pygame.mixer.pause:暂停播放所有声道  k2 V- _$ l  C' c( k7 n
    pygame.mixer.unpause:恢复暂停播放所有声道9 [- V4 V+ l8 p, l/ Y3 G! l7 l2 t
    pygame.mixer.fadeout:停止前淡出所有声音5 G! {0 [, f) A+ }
    传入时间参数,设置淡出时间
    2 p" C+ D% V; T! P12. pygame.draw
    $ V9 H/ s4 m8 D% [, E1 B! }/ J! \* D7 Z7 W
    该类是pygame中用于绘制图形的模块2 |  C& o$ m3 E2 n6 U* e

    - z5 \! v0 p/ r! @4 s. @$ \pygame.draw.rect:绘制矩形  `) A: i& ~1 k+ y" s' p, Z+ r
    pygame.draw.rect(Surface, color, Rect, width=0); z! M+ r8 O% [* C) y$ C
    Surface:绘制在 Surface 对象上
    ' D: X$ K4 n9 k+ _color:传入 RGB 三元组或 RGBA 四元组
    ; E6 v1 j" _: i+ l, P- g4 u+ b( B1 h! Ewidth:指定边框宽度,0 表示填充该矩形
    % ]- T. O* b( O1 w6 I* m7 M* ppygame.draw.polygon:绘制多边形
    8 ^1 n! e; r. ?) mpygame.draw.polygon(Surface, color, pointlist, width=0)
    ! }+ d6 |5 d2 a: [5 y$ Rpointlist:指定多边形的各个顶点
    0 x) c. k' |$ u  upygame.draw.circle:绘制圆形2 K  s* D2 K- V$ R* B  b/ }+ i
    pygame.draw.circle(Surface, color, pos, radius, width=0)
    ' Z0 w% M7 k1 D& F: z: d. gpos:圆心位置( L1 a9 K) b: a. v1 u
    radius:半径
    ; A; X0 H/ k, w' o+ s) gpygame.draw.ellipse:绘制椭圆
    / O* s' _- e1 c/ X  M+ |* w+ Upygame.draw.ellipse(Surface, color, Rect, width=0)$ m8 H( ]/ w9 r$ U7 B+ c& i, ^
    Rect:椭圆外切矩形
    1 V& b5 E- P7 U' B& V5 tpygame.draw.arc:绘制弧线. D1 A( h) Z5 e; S% o0 k
    pygame.draw.arc(Surface, color, Rect, start_angle, stop_angle, width=1)5 c9 P5 f  L6 \6 T' G- M7 G
    Rect:弧线所在椭圆外切矩形
    % `1 r; _# S& |angle:弧线开始和结束位置0 |3 c" Z% p' p! @1 Z
    pygame.draw.line:绘制线段
    3 g- \' s4 f8 b- n/ d" vpygame.draw.line(Surface, color, start_pos, end_pos, width=1)
    $ h5 ?0 W. [6 ~( npygame.draw.lines:绘制多条线段# ]1 c( y4 y0 E/ p. S6 ?
    pygame.draw.lines(Surface, color, closed, pointlist, width=1)
    : w4 [4 a6 u# h. Q8 w' v; |: Bpointlist:一系列点
    5 |: [# [& r3 x) ^closed:若为 True 则绘制首尾相连1 ~7 w9 \# o2 C, }% S
    13. pygame.font$ O$ B3 N# r& v9 X! m
    9 z* c/ F6 ^) M; ?: y; \! N) E1 V
    该类是pygame中加载和表示字体的模块
    ' Y1 F1 o" F8 G$ b: l* v$ z
    / b7 ?4 w0 ?) M* f- J- v* x. y8 cpygame.font.init:初始化
    ; G) |& q3 D0 L( [2 `pygame.font.quit:退出* Z, ]0 y. T( E8 j4 C
    pygame.font.get_init:判断是否初始化- H8 H$ e( f3 L3 o7 s% y" ^
    pygame.font.get_font:获取所有可使用的字体
    - [4 M( G6 C) O3 Jpygame.font.match_font:在系统中搜索字体
    3 I/ h& B1 h. Z9 J4 S0 B1 cpygame.font.SysFont:从系统字体库冲创建一个对象
    # x9 A  {  N& H* n; b& upygame.font.Font:从字体文件中创建一个对象
    9 y( b8 U, O3 Ypygame.font.Font.render:在新的 Surface 对象上绘制文本& W* }% w0 P$ `( a0 @3 a
    pygame.font.Font.size:确定字体大小
    ! T2 a  ?$ {4 Fpygame.font.Font.set_underline:是否加下划线
      E1 ]/ g$ L3 q- w8 Xpygame.font.Font.set_bold:是否加粗
      [# f, y0 K7 G* w, P4 Y5 w9 u3 Ppygame.font.Font.set_italic:是否设置为斜体
    ( m0 n% G* u) }' t$ n14. pygame.mixer.music
    2 c- ]) I% J# e& x
    + q5 H! C* Z- b( k, J0 E该类是pygame中控制音乐播放的模块,对于MP3格式的支持受限,建议OGG格式( o. K9 p8 ]* I

    $ C! Q! [- h* j, upygame.mixer.music.load:载入一个音乐文件
    ! B2 |4 `& B: h* y& o3 ~pygame.mixer.music.play:开始播放
    + P/ O7 t3 Q' v3 U0 ]+ d# {' X9 Upygame.mixer.music.play(loops=0, start=0.0)
      s& ~# H& o; P: P; @loops:控制再循环几次,若为3则一共播放4次
    " u) N. r1 f% |% Istart:控制从哪里开始播放,单位为秒0 u1 c# n! a; n. ]8 Q
    pygame.mixer.music.rewind:重新开始播放: p4 J2 L6 d# F9 y; A: h8 d, H
    pygame.mixer.music.stop:结束播放# ]- f6 j1 ~% ?% @
    pygame.mixer.music.pause:暂停播放+ B! v- U- C# O, k+ `' H3 H
    pygame.mixer.music.unpause:继续播放6 T  @' l6 X1 r- O) p# G! u
    pygame.mixer.music.set_voiume:设置音量
    - ~9 y0 S# _# q0 Zpygame.mixer.music.get_volume:获取音量6 g  B. |+ o5 m% D& B# e. m
    pygame.mixer.music.set_pos:设置播放位置
    , w1 H9 m; N  k- L5 r/ u  \传入一个浮点数,控制从什么时候开始播放
    2 N2 j, P* G# U! dpygame.mixer.music.queue:将一个应用文件放入队列,排在当前播放的音乐之后# Q- H; L$ N2 `6 v$ f# U* }
    pygame.mixer.music.set_endevent:设置播放结束事件! z; F, R( D' h. G+ `; e
    pygame.mixer.music.get_endevent:获取播放结束事件+ x' x/ ]% C6 y. O7 O
    15. pygame.mouse
    & q  }0 _- v4 e; }2 a2 Q
    . K$ v+ w" L0 d& l该类是pygame中与鼠标操作相关的模块$ u6 v2 a# U2 Y# f9 o+ \
    8 }% E3 |$ C; {" Z; a
    pygame.mouse.get_pressed:判断鼠标按键是否被按下* P  J4 b5 P0 K' f
    pygame.mouse.get_pos:获取鼠标光标位置
    7 w3 r. S* X" p6 r3 ^pygame.mouse.set_pos:设置鼠标光标位置
    " d% b9 z- v. m" s8 U/ {! Mpygame.mouse.set_visible:设置鼠标光标是否隐藏
    * ^! }4 H$ {  p2 D7 e1 rpygame.mouse.set_cuisor:设置鼠标光标在程序内的显示图像
    2 q6 @" A1 d6 A& t9 Mpygame.mouse.get_cursor:获取鼠标光标在程序内的显示图像
    - U* F# P( H. ^+ b+ B9 i16. pygame.BufferProxy( v2 H9 ~- J: h( y: i6 T, v

    1 a* y6 c/ A5 Y3 T1 ]该类是 Surface对象通过数组协议导出的一个缓冲对象
    * a8 J; l* v' ]: _2 j1 D2 l6 b: x( E9 Z' ~. G
    pygame.BufferProxy.parent:返回该 BufferProxy 的 Surface 对象, 或者调用 BufferProxy 的对象
    5 Y6 k- C: Z* \5 k) B7 z* E( Tpygame.BufferProxy.length:返回缓冲区的长度,单位是字节。类似于len字段6 i7 n* j. X' g+ o! L
    pygame.BufferProxy.length:将缓冲区的数据拷贝并返回,为str或bytes对象
    7 b6 T1 h6 N4 j+ Y* G. v' w  A6 upygame.BufferProxy.write:将字节写入缓冲区
    ; a' `: c& ^0 e! @; b0 c17. pygame.cdrom) c3 L' W" f+ {1 X! P  z

    3 G, i8 y* E3 X( U8 R. E) `6 v该类是pygame中使用音频cdrom的模块, cdrom 即 Compact Disc Read-only Memory 只读光盘, F& |$ ^; O9 Y1 O
    8 D  a9 E7 v  [4 T: ]8 j
    pygame.cdrom.init:初始化模块
    3 S5 k' F3 b5 M1 E+ ?9 `6 i' P) Ipygame.cdrom.quit:退出模块' v2 x8 O! L4 T# I, i2 P
    pygame.cdrom.get_init:判断是否初始化成功,成功返回 true. c, }: a2 O$ p, u; `
    pygame.cdrom.get_count:返回 cd 驱动器的个数0 a. @2 X4 B' h( G/ H
    pygame.cdrom.CD:管理驱动的类
    # S. K# U+ R! Kpygame.cdrom.CD.init:初始化( d9 i! Q. T. _
    pygame.cdrom.CD.quit:退出
    5 m; E# Q+ M4 F: ^/ [pygame.cdrom.CD.get_init:判断是否完成初始化
    7 ?' K. H8 p% R1 c' \- dpygame.cdrom.CD.play:开始播放
    ! m" r1 w5 V( b  Z/ Spygame.cdrom.CD.stop:停止播放
    . k+ K& K9 X& ppygame.cdrom.CD.pause:暂停播放& n1 m' p2 G9 i2 G
    pygame.cdrom.CD.resume:恢复播放7 o; T$ O/ n9 q. G5 v9 h* B
    18. pygame.PixelArray" ~* D, d' w: \1 u) b
    $ M' h  p0 [  v, j
    该类为pygame中直接处理访问像素的模块6 b' n" ^; M( D- h  F
    3 b) }7 ?8 M- B, `: F5 C
    pygame.PixelArray.surface:获取使用的 surface 对象; q2 P+ }; Q2 g$ D0 K7 f" G
    pygame.PixelArray.itemsize:返回像素数组项字节大小
    " |7 n' x3 D2 |) J! S5 @" r3 C$ Opygame.PixelArray.make_surface:根据当前 PixelArray 创建新的 surface 对象
    . G3 X4 s* L) x8 Ipygame.PixelArray.extract:从 PixelArray 中提取传递颜色; z6 V3 ?" G3 h4 s( _2 y
    19. pygame.cursors
    8 j( B4 C- S/ q8 d" H3 }
    4 P# f2 c7 l2 u9 S/ u, e9 g该类是pygame中使用光标资源的模块1 n5 C; I0 B( |( n- C  o
    " n1 b: _  g, y# Z! P3 q
    pygame.cursors.compile:又纯字符串创建二进制光标数据) S, p& P6 l% F7 J) E+ o# n, m! k
    pygame.cursors.load_xbm:由xbm文件载入光标数据7 c" w# f2 {- F  ?) V
    20. pygame.scrap% e9 T6 ~, z- _! l, Y
    , A3 \. ]' t: ^' B9 c# o0 \) `5 T
    该类是pygame中用于支持剪切板的模块
    ; G  T1 R8 ^8 @0 e
    ( C  t, }4 X8 n7 E/ b0 n8 ~: z+ Wpygame.scrap.init:初始化
    ) k+ o1 c- J( Y& p0 Kpygame.scrap.get:从剪切板获取指定类型数据2 |) i1 y9 w4 R0 Z4 h
    pygame.scrap.put:将数据放入剪切板
    1 c; M. O$ `7 p9 jpygame.scrap.contains:检测是否获得
    4 G$ |% Y  R. c21. pygame.sndarray
    & E. e  q3 Q  Y  n* ?! }" q8 F% F- J, Y/ ^; X: R
    该类是pygame中访问音频采样数据的模块
    4 A' t  T( f+ b& V8 y" F6 c0 t, [
    pygame.sndarray.array:将一个音频采样复制到一个数组" N6 O6 @* ?% w. M, h
    pygame.sndarray.make_sound:将一个数组变成一个音频对象* K. ^4 D1 x+ C' m: I9 B  I
    22. pygame.transform
    * U# z4 m  h! K& i7 p3 e
    7 i& O2 W4 L: j8 A; `+ V该类是pygame中用于改变surface形态的模块1 p5 G- g/ b. n& b7 K

    ; \7 P0 u! X/ C6 {5 U# |pygame.transform.flip:垂直和水平翻转
    6 g7 ?- d$ _9 Z6 ipygame.transform.scale:调整大小到新的分辨率0 I+ e+ M! u; F3 N
    pygame.transform.rotata:旋转图像
    5 d) m3 G6 w# c+ ?* M3 n- j2 K$ ]23. pygame.tests8 h6 Y0 `9 X" P

    4 R7 o, w  O- @该类是pygame中用于单元测试的模块
    . V! J+ b( F4 ]4 K) k
    ' s$ P* Y# ^* ^% J4 wpygame.tests.run:运行测试套件
    1 ~$ _3 P" G' @& f24. pygame.freetype
    , B7 P0 r  E+ P: }, v: q5 B! o! \% d- v4 T" i* V- J. W0 l. c+ n. H
    该类是pygame中用来加载和呈现计算机字体的模块,不常用- H: {% b: p0 m6 ]3 n

    ' h/ k# J0 Z: v9 _5 m( K+ H+ q25. pygame.joystick
    : C+ l) [+ g! M7 f) K) G, O4 E% k2 Q  d, ~  X( G+ P% R3 _) e# j
    该类是pygame中与游戏杆、游戏手柄、追踪球交互的模块,详情参考文档
    : E, k! Q  {9 V. e
    ( T5 ~# i( N/ J( d/ U' T8 n26. pygame.locals
    $ X3 Z5 _6 Y6 v, M  g5 n) T5 z2 l/ u
    " p# D# Z8 P. Z/ t0 E该类是pygame中定义各种常量的模块
    . t9 E0 w/ K/ ^  U  g7 Q7 \8 U0 X$ @
    27. pygame.surfarray2 O- \7 C( A" m/ ?, |. B
    3 T. q: z3 m% B: L
    该类是pygame中使用接口访问 surface 像素的模块,不常用
    2 [' V5 F* Y+ f2 z5 s6 ]* \
    4 L9 `( I' m  f28. pygame.Overlay) H" f: ~3 ~5 j; J

    . N( d" {! N! L& B1 {1 ~该类是pygame中用于处理视频叠加图像的模块,不常用  @- f0 l- q$ p$ [4 n
    ————————————————
    , M& s# |: Z0 |5 H! `4 B# l版权声明:本文为CSDN博主「丁生呀」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。. n9 @2 B  E, b1 f$ [, A$ ]
    原文链接:https://blog.csdn.net/qq_43733805/article/details/105809241
    9 D9 M+ F, T! H8 }5 J) P
    5 t0 y4 U8 E- ]7 y! G9 s
    " s  F/ J  j! M, o2 v
    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-10-15 06:02 , Processed in 1.634009 second(s), 50 queries .

    回顶部