__file__在Jupyter Notebook中不存在
我在使用Python 3.4.2的Jupyter Notebook服务器(v4.2.2)上,我想使用全局名称__file__,因为笔记本将从其他用户克隆而来,并且必须在一个部分中运行: def __init__(self, trainingSamplesFolder='samples', maskFolder='masks'): self.trainingSamplesFolder = self.__getAbsPath(trainingSamplesFolder) self.maskFolder = self.__getAbsPath(maskFolder) def __getAbsPath(self, path): if os.path.isabs(path): return path else: return os.path.join(os.path.dirname(__file__), path) 所述__getAbsPath(self, path)如果检查path参数是相对或绝对路径和返回的绝对版本path。因此,我以后可以path安全地使用返回的商品。 但是我得到了错误 NameError:名称'__file__'未定义 我在网上搜索了此错误,并找到了最好使用的“解决方案” sys.argv[0],但print(sys.argv[0])返回了 /usr/local/lib/python3.4/dist-packages/ipykernel/__main__.py 但是笔记本的正确位置应该是/home/ubuntu/notebooks/。 感谢您的参考。我如何从Martijn Pieters获得当前的IPython Notebook名称(评论),最后一个答案(不被接受)非常适合我的需求: print(os.getcwd()) / home / ubuntu / notebooks