fonction illisible dans un fichier annexe - Python - Programmation
Marsh Posté le 17-02-2023 à 15:10:18
Faut pas lui dire explicitement d'importer la fonction, genre from MyDef import filesize ?
Marsh Posté le 28-02-2023 à 18:34:04
Je confirme les affirmations des deux intervenants précédents: en Python l'import d'un module importe le module même, en tant qu'objet, ça ne fout pas implicitement le contenu du module dans le namespace courant comme dans d'autres langages.
D'ailleurs il est bien visible que os est importé, puis os est accédé, pas le contenu de os (même si pour faire bien il faudrait importer os.path: ici il s'avère que `os` importe `path`, mais ce n'est pas nécessairement le cas).
Accessoirement,
Marsh Posté le 17-02-2023 à 14:24:10
Bon, je débute en Python mais 40 ans de Pascal objet devrait m'aider à me dépatouiller.
Sauf que je constate un truc bizarre.
Si je propose le code suivant tout va bien:
import io
import os
def filesize(ichemin, inomfichier):
temp = os.path.getsize(ichemin+inomfichier)
return temp
print("Taille: ", filesize('', "test.txt" ))
Mais si je transfère la fonction "filesize" en copier/coller dans un fichier MyDef.py annexe, et que j'importe, cela ne marche plus:
import io
import os
import MyDef
print("Taille: ", filesize('', "test.txt" ))
Où donc ai-je commis une erreur??