Pygame类型错误:python。曲面对象不可订阅

我正在尝试运行一些电子游戏代码,并收到以下错误:
PyGame TypeError:python.Surface对象不可订阅
以下是代码:

选择 | 换行 | 行号
  1. ball1 = [ 100 ,50 , 1, 0]
  2.  
  3. def ball (x,y,movex,movey):
  4.     if x < 0 :
  5.         x * -1
  6.     if x > 580:
  7.         x= x* -1
  8.     if y < 0:
  9.         y = y* -1
  10.     if y > 260:
  11.         y = y*-1
  12.  
  13.     x+= movex
  14.     y+= movey
  15.  
  16.     return x ,y
  17.  
  18.   ball1x = ball1 [0]
  19.   ball1y = ball1 [1]
  20.   ball1x ,ball1y  = ball( ball1x, ball1y  ,1 ,0 )
  21.  

注意:显然,这并不是所有的代码。
该函数将与实数一起工作,即

选择 | 换行 | 行号
  1. ball1x , ball1y = ball ( 10 , 450, 1 ,0)

但它不能分配给列表中的项。

选择 | 换行 | 行号
  1. ball1 [0], ball1 [1] = ball( 10, 405, 1 ,0 )

这些只是假的限制吗?还是我做错了什么?
而且,每次我在创建了这个电子游戏窗口后,我都会收到这样的错误,我无法关闭窗口,并且窗口变得没有反应。
有什么办法解决这个问题吗?
谢谢!
马赫姆1

标签: python

添加新评论