Forum >> Principianti >> Primi esperimenti con classi

Pagina: 1

Buongiorno a tutti,
... e come giusto che sia.... ho cominciato ad affrontare le classi.....
... e come volevasi dimostrare.... ho già mal di testa...

allora, ecoc il mio problema:

creo un file denomitanto classy.py con dentro due classi

#Definisco la classe Bancomat

class Bancomat():
	def __init__(self, pin):
		self.pin = pin



# Definisco la classe sportello

class Atm():
	def __init__(self):
		self.bancomat = None

	def inserisci(self,bancomat):
		if self.bancomat != None:
			print "Mi dispiace, il lettore è già pieno!"
			return
		self.bancomat = bancomat
		print "Sto inserendo il bancomat..."

	def espulsione(self):
		if self.bancomat == None:
			print "Mi dispiace non è presente alcun bancomat all'interno!"
		self.bancomat = None

	def lettura_pin(self):
		if self.bancomat == None:
			print "Mi spiace non rilevo il bancomat "
			return
		print self.bancomat.pin
poi crea un altro file e lo chiamo operazioni.py

con dentro la creazione di un oggetto bancomat e uno Atm, ma qui arrivano gli errori
# -*- coding: utf-8 -*-
from classi import * 

bancomat1 = Bancomat(12345)

spertello1 = Atm()
spertello1.inserisci(bancomat1)

sportello1.lettura_pin()
funziona l'import... perchè quando vado a dare sportelli1.inserisci(bancomat1)
lui mi restituisce il print dichiarato nella classe..

ma se gli do sportello1.lettura_pin()
mi restituisce:


Traceback (most recent call last):
File "/Users/administrator/progetto-banca/operazioni.py", line 9, in <module>
sportello1.lettura_pin()
NameError: name 'sportello1' is not defined
[Finished in 0.0s with exit code 1]
[shell_cmd: python -u "/Users/administrator/progetto-banca/operazioni.py"]

ed io nomn capisco perchè...
voglio dire.. sportello1 io l'avevo definito poco sopra... ed ha funzonato con inserisci(bancomat1)
perchè ora non lo riconosce definito?


Scusate tutti sono un cretino.....
ho risolto....
semplicemnte creavo l'istanza spertello e non sportello...

ho bisogno di un ottico....
e tanto moment ACT


ho bisogno di un ottico....
e tanto moment ACT
:D
hahaha si guarda... sarà che sono un super rookie... sarà che il mio portatile ormai hauna risoluzione tale che converrebbe lavorare ocn due lenti di ingrandimento...... al posto degli occhiali.... ma non vedevo l'errore....

Superato questo scoglio.... ( assurdo )

mi resta la domanda B:

creando una classe ContoCorrente, e volendo definire al suo interno oltre a addebito ed accredito ( che si riferiscono inevitabilmente al self) di ogni istanza ContoCorrente,
come potrei affrontare la creazione del metodo "giroconto"

cioè, un normale addebito dal mio "self" conto corrente con destinazione un'altra istanza di ContoCorrente...

dico una fesseria?

Non dici una fesseria, potrebbe anche andare, non hai che da provare.

Prima di darti un altro consiglio, toglimi una curiosità: su quali esempi/testi stai studiando?


Pagina: 1



Esegui il login per scrivere una risposta.