Forum >> Principianti >> Problemi con programmi multi file

Pagina: 1

Buonasera , essendo un notevole ignorante in Python, volevo sottoporre a chi è più esperto un mio problema.
Allora ho un programma principale all’interno del quale ci sono alcune funzioni definite all’interno di alcune classi (ho letto che se le variabili sono definite nelle classi, le stesse variabili sono viste da tutte le funzioni del programma).

Poi ho un secondo programma che importo con il comando import; il suddetto programma dovrebbe utilizzare tra l’altro alcune variabili definite nelle classi del programma “principale”.

Il problema qual’e ??

Il problema è che il programma “importato” non vede le variabili definite nelle classi, a meno che io quando richiamo una funzione presente nel programma importato non passi come parametri le variabili.

Ma in “teoria” le variabili definite nelle classi non dovrebbero (così ho letto) essere visibili da ogni angolo del programma ??

La cosa sarebbe fattibile quando hai poche variabili, ma se ne hai oltre 50/70,diventa difficile ogni volta che richiamo la funzione di interesse definire l’importazione delle variabili.

Spero di essere stato chiaro nell’esporre il problema.

Restando in attesa di suggerimenti ringrazio anticipatamente.




Alberto



------
Alberto
Ma non ti conviene semplicemente applicare il concetto di ereditarietà per la seconda classe?

Magari questo esempio, sempre preso dal nostro forum, può darti uno spunto da cui partire.

Fammi sapere come va.
Cya
Daniele aka Palmux said @ 2018-04-27 15:25:59:
Ma non ti conviene semplicemente applicare il concetto di ereditarietà per la seconda classe?

Magari questo esempio, sempre preso dal nostro forum, può darti uno spunto da cui partire.

Fammi sapere come va.
Cya

Ciao Daniele, ho visto il tuo suggerimento (non l'ho ancora capito, ma ci arrivero') ma il mio problema è che voglio per motivi di leggibilita' fare programmi corti e farli interagire.

Mi spiego :




Programma A:

Import del programma B

Ho una Def che lavora le variabili del programma B (TUTTO REGOLARE)

ho delle variabili che dovranno essere lavorate anche dal programma B.




Programma B:

Ho un Def che lavora delle variabili del programma B (TUTTO OK) e dovrebbe lavorare anche delle variabili del programma A.







Problema : il programma A vede e lavora benissimo la variabili del programma B

Il programma B non mi lavora le variabili del programma A (Mi dice che non sono state definite).




Tenendo conto che se le variabili sono 5/6 le posso anche passare con la chiamata alla Def , ma siccome nei miei programmi le variabili sono circa un 60ina mi diventa complicato.

Anche perchè sui manuali Python si dice chiaramente che le variabili vengono viste da TUTTE LE PARTI DEL PROGRAMMA (cosa che non riesco a far avvenire).

Ci sono comandi particolari per far in modo che ANCHE il programma importato veda le varibili del programma PRINCIPALE ??




E' magari PREVISTO che SOLO il programma principale VEDA direttamente le variabili del programma IMPORTATO ??




Ci Sto perdendo la testa ....Aiuto ???




Grazie



------
Alberto
Continuo a pensare che potresti fare come ti ho suggerito in precedenza.

Nel file A metti la classe genitore.

Nel file B metti la classe figlia e la derivi dal genitore, così avrai a disposizione i vari metodi.

Se poi proprio non vuoi agire così, potresti importare solo quello che ti interessa dalla classe genitore, più coinciso e funzionale di così.

Potresti altrimenti lavorare con alcune variabili globali, ma è largamente una soluzione meno elegante.

Cya


Pagina: 1



Esegui il login per scrivere una risposta.