python里导入ipython_无法将.py文件导入ipython notebook

在尝试将.py文件导入IPython Notebook时遇到困难。用户提到将.py文件拖到Notebook文件列表中提示无效文件类型,更改扩展名后出现错误。解决方案包括使用%load命令或修改sys.path以导入.py文件。
摘要由CSDN通过智能技术生成

为"我无法让它工作"问题提前道歉:我应该如何将.py文件加载到ipython笔记本中?我想将python代码转换为笔记本(第一个简单的脚本和后来的脚本,其中包含作为注释嵌入的nbconvert指令 - 请参阅链接文件的底部。)

也许我做错了,但也许我的设置出了问题。当我将.py文件拖到Notebook的文件列表中时,我收到了消息

Invalid file type: Uploaded notebooks must be .ipynb files.

我甚至尝试将扩展名更改为.ipynb(保持python脚本不被修改);合理的,我收到了一个错误:

Error loading notebook: Bad request

知道出了什么问题吗?

系统信息:我在OS X(10.8,Mountain Lion)上,使用Firefox 28.0和Anaconda 1.9.2(x86_64),它提供python 2.7.6和ipython 2.0。 Anaconda不是默认的PATH;我在一个bash会话中添加它然后从中启动带有ipython notebook的笔记本,并且我能够在浏览器中正常打开和编辑.ipynb文件。

但我确实得到了一些好奇的行为:

从笔记本导出为.py文件时,我不会在此处记录控制注释,而是更简单的格式,没有版本号:

# coding: utf-8

# In[ ]:

print"This is a slide"

## Top-level title

### Second-level heading

#### Third-level heading

# This is some `markdown` text.

#

# And some more here.

知道这里发生了什么吗?

ipython nbconvert生成相同的格式。但是,如果我用ipython notebook --script(每次保存时将笔记本导出为python脚本)启动笔记本服务器,结果将包含我们需要转换回笔记本的nbconvert指令!

转换为(不是)ipython Notebook格式的可能重复

@Cristian,问题是相关的,但它们不是重复的; 这就是为什么我问他们两个。 这个问题的答案是在GUI中无法做到这一点,这是另一个问题变得相关的唯一原因。

好的,我已经撤回了我的投票结果。

我有同样的问题。

这篇文章帮助:

如何加载/编辑/运行/保存文本文件(.py)到IPython笔记本单元格?

基本上,我们只需要在单元格中使用以下命令。 并且.py文件必须位于同一目录中。

%load filename.py

谢谢,这是一个有用的功能,知道但不是我需要的。 在此期间我已经解决了这个问题,我应该早点自我回答。

我不确定为什么笔记本本身不支持这个,但我得出结论答案是:它不能通过命令行或笔记本GUI完成。

像这样的控制注释只能通过python访问笔记本的API来解释,如@CliffordVienna在我对相关问题的回答中所示。

import IPython.nbformat.current as nbf

nb = nbf.read(open('test.py', 'r'), 'py')

nbf.write(nb, open('test.ipynb', 'w'), 'ipynb')

编辑:上述方法不适用于Notebook API的当前版本(v4),所以我添加了这个自我答案来展示它是如何完成的。

如果您只需要导入本地文件,请首先使用:

sys.path.append(os.getcwd())

将.pynb文件的目录放在sys.path中,然后导入本地文件。

感谢您的帮助,但您知道ipython笔记本是什么吗? sys.path与问题无关。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值