【问题标题】:IPython code migration from Python 2 to Python 3IPython 代码从 Python 2 迁移到 Python 3
【发布时间】:2013-12-18 06:54:14
【问题描述】:

由于 SciPy,我一直坚持使用 Python 2,即使我想迁移到 Python 3。由于我的大部分研究工作是数据分析和建模,所以我在日常工作中使用了 IPython HTML 笔记本工作。但是,这意味着我已经习惯了 Python 2 语法(例如print x),这经常出现在我的健全性检查步骤中。

现在 SciPy 似乎与 Python 3 兼容(如果我错了,请纠正我),我想从 Python 2 迁移到 Python 3。

但是,这意味着我的大多数 IPython 笔记本都充满了 Python 2 print 语句,每次我通过它们重新运行分析时都会产生大量错误。

所以这是我的问题:2to3 是否能够修改 IPython HTML 笔记本?后勤挑战:我现在有大约 30-40 个,分散在不同的项目文件夹中。如果 2to3 不是正确的解决方案,我应该采取其他措施吗?

【问题讨论】:

  • 您说得对,目前还没有适用于 HTML 笔记本的自动化工具。这在此处的问题跟踪器中进行了讨论:github.com/swcarpentry/bc/issues/107 .ipynb 文件是文本文件,您可以使用负责此 2to3 转换的脚本对其进行解析,尽管它可能不一定是微不足道的。该线程表明该问题将在 2014 年重新讨论。

标签: python python-2.7 python-3.3 ipython-notebook


【解决方案1】:

您可以使用此脚本2to3_nb.py。像这样运行它:python 2to3_nb.py <path_to_folder_containing_notebooks>

【讨论】:

  • 假设我有一个完整的项目,其中包含用 Python 2.7 编码的笔记本。我想将它们全部转换为 Python 3。如果我运行:python 2to3_nb.py <my_project_folder>,它会用 Python 3 代码转换并替换 中的所有笔记本吗?
猜你喜欢
  • 2019-09-06
  • 1970-01-01
  • 1970-01-01
  • 2023-03-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多