J'ai mis à jour ma version python sur le serveur Windows 2003 de 2.4 à 2.5.Le répertoire de travail actuel n'est plus hérité du processus d'appel à partir de python 2.5?
2.4 Je pourrais importer un fichier "sub1.py" à partir d'un sous-répertoire c: \ Application \ subdir \ comme ceci:
import sub1
aussi longtemps que le main.py de script appelant qui vit dans c: \ l'application a commencé comme ceci:
c:\application\subdir>python ..\main.py
Mais dans 2,5, il ne fonctionne plus pour moi:
C:\application\subdir>python ..\main.py
Traceback (most recent call last):
File "main.py", line 3, in <module>
import sub1
ImportError: No module named sub1
maintenant, je peux mettre un fichier vide
__init__.py
dans subdir et l'importation comme ceci:
import subdir.sub1 as sub1
Y avait-il un changement de Python 2.5? Cela signifierait que le répertoire de travail actuel dans python 2.4 a été hérité du processus appelant, et dans python 2.5, il est défini sur l'emplacement du script principal.
[edit3] J'ai corrigé la question maintenant. Je dois m'excuser d'avoir trop simplifié l'exemple au début et d'avoir supprimé la cause qui provoque l'erreur sans vérifier mon exemple simplifié. [/ EDIT3]
S'il vous plaît garder la question et juste dire, que vous avez trouvé le problème et ce qu'il était ... Downvotes pour le texte comme "désolé j'ai supprimé la question" sont ok! – Gregor
vous êtes intelligent mais le downvote était avant que je l'ai changé. c'était la raison pour laquelle je l'ai enlevé pour ne pas avoir plus de downvotes (parce que le downvoter nic n'a même pas pris la peine de commenter pourquoi il ou elle l'a fait c'est auto protection) – user89021
Ouais, mais pour enlever la question n'est toujours pas la bonne façon! Je comprends que ce n'est pas correct si elles ont rejeté une bonne question. Ce serait plus facile si vous le laissez juste ... tout le monde obtient des downvotes sans raison. – Gregor