Je n'arrive pas à trouver cette réponse nulle part, donc ... MacBook Pro OSX Sierra, Pycharm CE, Python 3.6.0 :: Anaconda 4.3.1 (x86_64).Python3: Pourquoi la fonction d'importation à partir du fichier fonctionne-t-elle seulement la première fois?
Salut J'essaie d'importer une fonction à partir d'un fichier, et cela fonctionne. Ensuite, je change la fonction dans le fichier, et l'importation ne fonctionne pas: il n'y a pas de changement dans le fonctionnement de la fonction. Je del de la fonction, puis ré-importer à partir du fichier, ne fonctionne toujours pas.
exemple, dans le fichier new.py
def new(inp):
return(inp)
J'importer et appeler:
from new import new
new(9)
Out[249]:
9
Oh, je veux changer la fonction dans le fichier.
changements new.py à
def new(inp):
if type(inp) == str:
this = inp + "five"
return(this)
from new import new
new(9)
Out[250]:
9
sorties Toujours juste l'entrée non modifiée "inp". deal Même si je
del new
from new import new
ne fait pas de différence si je change le nom de la fonction (! = Nom de fichier).
On dirait que vous utilisez ipython. Les réponses [ici] (https://stackoverflow.com/questions/1254370/reimport-a-module-in-python-while-interactive) pourraient être utiles. – roganjosh
'type (inp) == str' est' False' car 'inp' n'est pas' str' ... –
Ce que j'essaie de dire, c'est de passer une chaîne si vous voulez une chaîne. 'new ('9')' –