Gå til innhold

Klasse som eigen fil, korleis få til å lage ein instans?


Anbefalte innlegg

Eg har ein klasse eg har skreve i Python, den ser sånn ut

 

import pygame

class Box(pygame.sprite.Sprite):
def __init__(self):
	pygame.sprite.Sprite
	self.image = pygame.Surface((25,25))
	self.image.fill((255,0,0))
	self.rect = self.image.get_rect()
	self.rect.centerx = 0
	self.rect.centery = 200
	self.dx = 10
	self.dy = 0

def update(self):
	self.rect.centerx += self.dx
	if self.rect.right > screen.get_width():
		self.rect.left = 0

Filen den er lagret i heter Box.py

Korleis kan eg bruke denne frå eit anna python skript?

Endret av siDDIs
Lenke til kommentar
Videoannonse
Annonse
Filen den er lagret i heter Box.py

Korleis kan eg bruke denne frå eit anna python skript?

En .py fil er en modul, du kan ha masse klasser, funksjoner, variable osv i en modul og du kan importere fra en modul hvis den ligger i python-pathen eller i samme katalog som du er i.

 

Hvis filen din ligger i samme katalog eller i python-pathen kan du gjøre

from Box import Box

 

Men husk; Python er ikke Java (eller noe annet), så "en klasse per fil" er ikke nødvendigvis det Pythonske.

Lenke til kommentar

Aha, visste det var noko enkelt men eg fatta ikkje sammenhengen! Tusan takk for hjelpa!

 

Ein anna ting, eg sidan bruker pygame bibloteket så må eg skrive import pygame i alle filene eg lager, er det noko som heiter import_once så eg slipper å måtte importere heile tida? Det ville vell og vore raskare for programmet å ikkje måtte importere same bibloteket fleire gonger? :)

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...