在Jupyter上创建Python脚本时,是否可以从另一个Python文件中调用函数?
当我尝试打电话时,它可以在Terminal上运行,但不能在Jupyter上运行。
答案 0 :(得分:1)
首先,如果您已经在使用其他文件,建议您停止使用jupyter甚至终端。
您可以改用Pycharm。
如果您只是在学习,可以使用jupyter,但如果您已经处于该阶段,建议您坚持使用Pycharm。
Pycharm是一个不错的IDE,您可以在其中直接运行文件,并具有许多更酷的功能。
此外,要在jupyter中使用它,只需导入所需的文件:
import #whatever file you want
答案 1 :(得分:0)
例如,假设我有一个Person.py
文件,它位于我当前的jupyter笔记本的工作目录中。此外,假设它很简单,就在这里
def get_rss(y, x):
x = sm.add_constant(x)
results=sm.OLS(y, x).fit()
rss= (results.resid**2).sum()
N=results.nobs
K=results.df_model
return rss, N, K, results
def myfunc(d):
print("Hello my name is " + d)
当我尝试致电时,它可以在Terminal上运行,但不能在Jupyter上运行。
当我尝试将其命名为import Person
时,它可以在Jupyter单元格上使用,但是无法访问其中的函数。
例如,如果您尝试在Jupyter Notebook中编写此内容,则在键入此内容后可能会收到此消息 Person.myfunc('ds')
---------------------------------------------------------------------------
AttributeError Traceback (most recent call last)
<ipython-input-60-63fdc0f35859> in <module>
----> 1 Person.myfunc('ds')
AttributeError: module 'Person' has no attribute 'myfunc'
重新启动内核,这应该可以消除此问题。我希望这也可以澄清您的问题,也可以作为答案。
答案 2 :(得分:0)
只需重新启动内核,它就可以正常工作:)