python-3.x - jupyter notebook 中未定义名称“__file__”
问题描述
我想在 jupyter notebook 中运行这个存储库 https://github.com/werner-duvaud/muzero-general,但是当我复制所有代码并在 jupyter 中上传所有文件时,我得到了这个错误:
os.listdir(os.path.dirname(os.path.realpath(__file__)) + "/games")
我应该使用克隆...吗?可以帮我解决这个问题吗?谢谢
解决方案
由于您使用的环境而出现问题。当您在 Jupyter notebook 中运行 python 代码时,您并没有运行通常的 python 环境 - 您正在使用 iPython 运行它 - 交互式 shell(版本 7.12.0 目前是最后一个)。并且它没有__file__
像主流 python 环境那样定义隐藏变量 - 所以它不知道在哪里寻找“/游戏”文件夹。
你可以做什么:
- 在定义了“文件”变量的普通 python 环境中运行它
- 尝试将您的 Jupyter 笔记本文件放在此项目文件夹中,并使用 os.getcwd() 代替
os.path.dirname(os.path.realpath(__file__))
或以任何其他适合您的方式更改路径。
推荐阅读
- angular - 如何使 matTooltip 以角度滚动
- python - 在python中自动访问列表元素
- pandas - 为什么在 Python 中通过 CSS 选择器定位元素仅在某些情况下有效?
- resources - Colab Pro 资源窗口不断出现
- c++ - cpp 尝试加载图像但没有响应的错误
- c# - 无法在 RaycastHit2D 上执行 If 语句,除了最上面的语句
- python - 如何将 2x2 的 matplotlib 网格的 y 值设置为共享常数?
- r - 为什么函数 svyCreateTableOne 有效,但我无法打印连续结果?
- import - 我们可以从 PowerBI 导入一个表两次吗
- azure-functions - Azure Functions - ObjectResult 呈现 JSON,但如何配置?