Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce
Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce
REDMI Note 17 Pro porta in fascia media una batteria da 8.340 mAh con ricarica HyperCharge a 67W, un display AMOLED da 6,83 pollici capace di picchi di luminosità molto elevati e una struttura certificata TÜV SÜD contro cadute e infiltrazioni d'acqua, il tutto racchiuso in una scocca da 223 grammi. Lo abbiamo provato per diversi giorni tra fotocamera, prestazioni, autonomia e prezzo sul mercato italiano
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema
Insta360 Luna Ultra integra un sensore da 1 pollice 8K, ottiche Leica e triplo chip IA. Tra schermo OLED rimovibile, workflow I-Log a 10 bit e stabilizzazione a tre assi, analizziamo le doti tecniche di una gimbal camera pensata per i professionisti
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa
Marvel's Wolverine porta Logan in un'avventura inedita, violenta e fortemente narrativa, costruita attorno alla sua natura di combattente e al difficile rapporto con il proprio passato. Insomniac Games punta su combattimenti spettacolari, progressione e personalizzazione, inserendo l'azione in un mondo segnato dalla persecuzione dei mutanti. Un viaggio intenso, che alterna mattanza, esplorazione e momenti sorprendentemente emotivi.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 11-05-2009, 10:16   #1
pumppkin
Member
 
Iscritto dal: Feb 2005
Messaggi: 295
[python] importError

Ciao, sono alle prime armi con python e già sorgono i primi problemi...allora...ho installato pydev su eclipse. Per fare qualche prova ho creato due package "nested" e "nested2", ognuno di essi contiene due file (oltre i file __init__) che sono example ed example2 rispettivamente. I file sono i seguenti:
su example ho creato solo un metodo chiamato fib:
def fib(n):
a, b = 0, 1
while b < n:
print(b)
a, b = b, a+b

mentre in example2 voglio solo importare il metodo fib così da poterlo utilizzare. Ma se scrivo
from root.nested.example import fib

mi viene restituito un importError dicendomi che non riesce a trovare nessun modulo fib. La stessa prova l'ho fatta con IDLE (la shell di python) e non mi ha dato problemi....penso che sia un problema di path...ma come posso risolverlo??grazie
pumppkin è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2009, 10:28   #2
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
All'inizio del codice metti questo:
Codice:
import sys
sys.path.append('.')
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2009, 10:43   #3
pumppkin
Member
 
Iscritto dal: Feb 2005
Messaggi: 295
ho provato ma non funziona..mi ritorna sempre lo stesso errore...
...la struttura delle cartelle è fatta così, non so se può servire:

Prova (progetto)
---- src (source folder)
--------root (package)
------------nested (package)
example.py
------------nested2
example2.py

ho provato anche ad aggiungere la cartella Prova del progetto al PYTHONPATH andando sulle opzioni di pydev ma non funziona...
pumppkin è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2009, 10:55   #4
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Dipende tutto dalla cartella dove si trova il file principale. Mi dici dove l'hai piazzato?
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2009, 11:02   #5
pumppkin
Member
 
Iscritto dal: Feb 2005
Messaggi: 295
su Vista il progetto è posizionato in:

C:\Users\Peppe\Documents\Prova
pumppkin è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2009, 11:16   #6
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
OK, e il file principale (mettiamo si chiami main.py) si trova in questa cartella?
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2009, 11:23   #7
pumppkin
Member
 
Iscritto dal: Feb 2005
Messaggi: 295
mmm...non ho nessun file principale...l'idea era solo quella di far partire example2 in modo da richiamare il modulo fib...tra l'altro i file .py non sono classi..ho scritto solo il codice del modulo in uno e la chiamata al modulo nell'altro...
...non si può fare quello che ho fatto??
pumppkin è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2009, 11:38   #8
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Dovrebbe funzionarti con

from root.nested.example import fib

se example2 è messo dentro la cartella Prova, ovviamente aggiungendo prima le due righe di codice che ho inserito.

Ricordati di controllare che la cartella CORRENTE del progetto dev'essere Prova, altrimenti non funziona.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2009, 12:16   #9
pumppkin
Member
 
Iscritto dal: Feb 2005
Messaggi: 295
non va neanche così....boh...non so più cosa fare....
pumppkin è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2009, 12:21   #10
pumppkin
Member
 
Iscritto dal: Feb 2005
Messaggi: 295
quello che mi restituisce è questo:
Traceback (most recent call last):
File "C:\Users\Peppe\Documents\Prova\src\root\nested2\example2.py", line 9, in <module>
from root.nested.example import fib
ImportError: No module named root.nested.example

il file example2 è il seguente:
import sys
sys.path.append('.')

from root.nested.example import fib

f = fib(10)
pumppkin è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2009, 12:27   #11
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Fai una cosa allora: metti tutto dentro un archivio zip e allegalo qui, così posso provarlo.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2009, 12:30   #12
pumppkin
Member
 
Iscritto dal: Feb 2005
Messaggi: 295
ok grazie....
Allegati
File Type: zip Prova.zip (2.3 KB, 1 visite)
pumppkin è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2009, 14:59   #13
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Come immaginavo, è un problema di path dei vari oggetti.

Se metti example2.py dentro la cartella src, e da qui fai lo eseguire da python, vedrai che funzionerà.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2009, 15:03   #14
pumppkin
Member
 
Iscritto dal: Feb 2005
Messaggi: 295
si ok così funziona..però se volessi creare più package e richiamare moduli da altri package come faccio?...fai conto che lo stesso esempio sulla shell IDLE funziona...
pumppkin è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2009, 15:05   #15
pumppkin
Member
 
Iscritto dal: Feb 2005
Messaggi: 295
inoltre, se dovessi creare un altro file all'interno del package nested che richiama la stessa funzione in example non funziona....

edit:
mi correggo...in questo caso funziona...
pumppkin è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2009, 15:16   #16
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da pumppkin Guarda i messaggi
si ok così funziona..però se volessi creare più package e richiamare moduli da altri package come faccio?...
Ti basta assicurarti che i package siano sempre "raggiungibili" dal path.

Quindi se hai il package "pippo" che usa il modulo "pluto" del package "topolino", e tu usi "pippo", devi assicurarti che "pippo" e "topolino" siano sempre raggiungibili da Python.
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2009, 15:17   #17
pumppkin
Member
 
Iscritto dal: Feb 2005
Messaggi: 295
scusa ma nel mio caso non erano raggiungibili??...io nel PYTHONPATH avevo messo la source folder fino a src
pumppkin è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2009, 15:48   #18
pumppkin
Member
 
Iscritto dal: Feb 2005
Messaggi: 295
quel che intendo è: due file che appartengono a package differenti di uno stesso progetto non possono importare moduli dell'uno o dell'altro?
pumppkin è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2009, 15:58   #19
cdimauro
Senior Member
 
L'Avatar di cdimauro
 
Iscritto dal: Jan 2002
Città: Germania
Messaggi: 26110
Quote:
Originariamente inviato da pumppkin Guarda i messaggi
scusa ma nel mio caso non erano raggiungibili??...io nel PYTHONPATH avevo messo la source folder fino a src
Sì, ma prima avevi example2 che non stava in src, ma in fondo a uno dei due package.
Quote:
Originariamente inviato da pumppkin Guarda i messaggi
quel che intendo è: due file che appartengono a package differenti di uno stesso progetto non possono importare moduli dell'uno o dell'altro?
E' possibile. Adesso non so di preciso se è possibile che ognuno importi moduli dell'altro, ma sicuramente funziona in una sola direzione (un package che usa moduli di un altro).
__________________
Per iniziare a programmare c'è solo Python con questo o quest'altro (più avanzato) libro
@LinkedIn Non parlo in alcun modo a nome dell'azienda per la quale lavoro
Ho poco tempo per frequentare il forum; eventualmente, contattatemi in PVT o nel mio sito. Fanboys
cdimauro è offline   Rispondi citando il messaggio o parte di esso
Old 11-05-2009, 16:08   #20
pumppkin
Member
 
Iscritto dal: Feb 2005
Messaggi: 295
ah ok quindi example non può richiamare un modulo di example2 se quest'ultimo richiama un modulo di example...
pumppkin è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione REDMI Note 17 Pro: il midrange con batteria da 8.340 mAh e ricarica veloce Recensione REDMI Note 17 Pro: il midrange con ba...
Insta360 Luna Ultra: la potenza del sensore da 1 pollice incontra la portabilità estrema Insta360 Luna Ultra: la potenza del sensore da 1...
Marvel's Wolverine, la recensione: Logan torna protagonista in un'avventura brutale e intensa Marvel's Wolverine, la recensione: Logan torna p...
DJI Romo 2: tante novità lo rendono un robot completo DJI Romo 2: tante novità lo rendono un ro...
Sony Bravia 9 II: il True RGB alla prova, dove l'LCD sfida l'OLED Sony Bravia 9 II: il True RGB alla prova, dove l...
One UI 9 arriva sui Galaxy S26: pi&ugrav...
Hacker chiedono 2,5 milioni di euro a Re...
Home Assistant su uno schermo touch econ...
L'IA entra nei negozi Unieuro con Google...
"What Holds Us", la nuova most...
La Formula 1 divide sui motori, ma il su...
Un computer a DNA esegue moltiplicazioni...
Ibride cinesi, l'Europa fissa il tetto a...
iPhone Duo potrebbe dar vita a una gamma...
Denza Z9S: la berlina elettrica con il r...
Valve abilita i driver e il supporto all...
Terafab, il progetto di Musk finisce in ...
Il meglio di Amazon in 42 articoli: sono...
ECOVACS WINBOT W2 PRO OMNI a 349€: ecco ...
Samsung Gallery Cloud Sync introduce il ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 13:44.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v