我似乎無法在任何地方找到此問題,所以... MacBook Pro OSX Sierra,Pycharm CE,Python 3.6.0 :: Anaconda 4.3.1(x86_64)。Python3:爲什麼從文件導入功能只能第一次工作?
嗨我嘗試從文件導入功能,它的工作原理。 然後我改變文件中的函數,導入不起作用:函數的操作沒有改變。 我del函數,然後從文件重新導入,仍然不起作用。
例,在文件new.py
def new(inp):
return(inp)
於是我進口,並呼籲:
from new import new
new(9)
Out[249]:
9
哦,我想改變功能的文件中。
到
def new(inp):
if type(inp) == str:
this = inp + "five"
return(this)
from new import new
new(9)
Out[250]:
9
new.py變化仍然只是輸出未修改的輸入 「INP」。 同樣的問題,如果我
del new
from new import new
不有所作爲,如果我改變函數的名稱(!=文件名)。
它看起來像你使用IPython的。答案[這裏](https://stackoverflow.com/questions/1254370/reimport-a-module-in-python-while-interactive)可能會有用。 – roganjosh
'type(inp)== str'''False'因爲'inp'不是'str' ... –
我想說的是,如果你想要一個字符串,傳遞一個字符串。 '新('9')' –