Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 31, 2011 19:49:26

long_bass
От:
Зарегистрирован: 2011-01-31
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Список не хочет заполняться

Добрый вечер
Буквально позавчера начал изучать Python до этого имел дело с pascal,delfi
Сделав несколько простеньких программ. Взял номер Linux Format №10 за 2008 год, где была статья об игре на Питоне с использованием pygame
Переписав из журнала код, начал разбирать его.
Запустил в Eric выполенение

from pygame import *
import random

class Sprite:
def init (self,xpos,ypos,filename):
self.x = xpos
self.y = ypos
self.bitmap = image.load(filename)
self.bitmap.set_colorkey((0,0,0))
def set_position(self,xpos,ypos):
self.x = xpos
self.y = ypos
def render (self):
screen.blit(self.bitmap, (self.x, self.y))

def Intersect(s1_x,s1_y,s2_x,s2_y):
if (s1_x > s2_x - 32) and (s1_x < s2_x + 32) and (s1_y > s2_y -32) and (s1_y < s2_y + 32):
return 1
else:
return 0

init()
screen = display.set_mode((640,480))
key.set_repeat(1,1)
display.set_caption('PyInvaders Realy Cool!')
backdrop = image.load('data/backdrop.bmp')
enemies = []
x=0
for count in range(10):
warrior = Sprite((50*x + 50),50,'data/baddie.bmp')
enemies.append(warrior) <---------------------------------------------------Error is Here!
x += 1
hero = Sprite (20, 400,'data/hero.bmp')
ourmissile = Sprite (0, 480,'data/heromissile.bmp')
enemymissile = Sprite (0, 480,'data/baddiemessile.bmp')

<дальнейший код опущен>
Eric выдаёт ошибку
Отлаживаемая программа выбросила исключение unhandled TypeError
“this constructor takes no arguments”
Файл: /home/sergey/PyInvanders/PyInvanders.py, строка 31

Не могу понять в чем ошибка.
Поможете?



Офлайн

#2 Янв. 31, 2011 20:02:48

o7412369815963
От:
Зарегистрирован: 2009-06-17
Сообщения: 1986
Репутация: +  32  -
Профиль   Отправить e-mail  

Список не хочет заполняться

для начала нужно отступы в порядок привести (кол-во пробелов перед символами в каждой строке), а то не с компилируется

Офлайн

#3 Янв. 31, 2011 20:41:42

long_bass
От:
Зарегистрирован: 2011-01-31
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Список не хочет заполняться

да уж с отступами проблема

пожалуй я исправил их
=)



Офлайн

#4 Янв. 31, 2011 21:16:51

certanista
От:
Зарегистрирован: 2010-10-28
Сообщения: 20
Репутация: +  0  -
Профиль   Отправить e-mail  

Список не хочет заполняться

Подчеркивания нужны.

#...
def __init__(self, xpos, ypos, filename):
#...
Вот так.



Офлайн

#5 Янв. 31, 2011 21:26:37

long_bass
От:
Зарегистрирован: 2011-01-31
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Список не хочет заполняться

спасибо
заработало



Офлайн

#6 Фев. 1, 2011 20:28:47

Carzil
От:
Зарегистрирован: 2010-05-26
Сообщения: 106
Репутация: +  0  -
Профиль   Отправить e-mail  

Список не хочет заполняться

o7412369815963
а то не с компилируется
Но ведь Python - это не компилируемый, а интерпретируемый язык программирования.



Офлайн

#7 Фев. 1, 2011 21:59:13

igor.kaist
От:
Зарегистрирован: 2007-11-12
Сообщения: 1879
Репутация: +  3  -
Профиль   Отправить e-mail  

Список не хочет заполняться

Carzil
Но ведь Python - это не компилируемый, а интерпретируемый язык программирования.
ну в байт-код то все равно скомпилируется ;)



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version