讲师中心 微信公众号
AI工具推荐 视频效率加速

从 Jupyter Notebook 单元格直接获取 Python 输入数据

阿萱小哥_1133

阿萱小哥_1133

发布时间:2025-11-16 11:46:18

|

401人浏览过

|

来源于php中文网

原创

从 jupyter notebook 单元格直接获取 python 输入数据

本文介绍如何在 Jupyter Notebook 中直接从一个单元格获取 Python 输入数据,模拟在线编程平台的测试用例输入方式。我们将探讨如何利用 IPython 的 In 和 Out 对象来访问和使用单元格中的代码和输出,从而实现测试用例的自动化。

在 Jupyter Notebook 中,你可能会遇到需要从一个单元格获取输入数据,并在另一个单元格中运行代码的情况,尤其是在教学或测试场景下。IPython 提供了 In 和 Out 这两个对象,它们分别存储了已执行的代码和输出,可以方便地访问和利用这些数据。

理解 In 和 Out

当你执行一个 Jupyter Notebook 单元格时,单元格左侧会显示 In [n]:,执行结果的单元格左侧会显示 Out[n]:,其中 n 代表单元格的执行顺序。

立即学习“Python免费学习笔记(深入)”;

  • In 是一个列表,存储了每个已执行的代码单元格的内容,以字符串形式保存。In[1] 存储的是第一个执行的代码单元格的内容。
  • Out 是一个字典,使用单元格的执行顺序编号作为键,存储该单元格的输出结果作为值。

如何使用 In 和 Out

以下示例展示了如何使用 In 和 Out 对象。

示例:获取单元格代码并执行

假设第一个单元格(In [1])包含以下 Python 代码:

x = 5
y = 6
print(x + y)

你可以在另一个单元格中使用 In[1] 获取该代码,并使用 exec() 函数执行它:

code = In[1]
exec(code)

这段代码会输出 11,因为 exec() 函数执行了第一个单元格中的代码。

Li Python Sec Check
Li Python Sec Check

Python 安全规范检查工具:基于 CloudBase 规范、腾讯安全指南,LLM 智能分析(默认禁用,优先本地执行)

下载

示例:获取单元格输出并使用

假设第一个单元格(In [1])执行后输出了 11。 你可以在另一个单元格中使用 Out[1] 获取该输出:

result = Out[1]
print(result)

这段代码会输出 11。

应用场景:自动化测试

这种方法非常适合自动化测试场景。你可以将测试用例的输入数据放在一个单元格中,然后编写代码从该单元格读取数据,并将其传递给待测试的函数或程序。

例如,假设你在 In [2] 中有以下测试用例输入:

5
6

你的目标是测试一个求和函数。你可以这样实现:

def sum_function(input_str):
    lines = input_str.splitlines()
    x = int(lines[0])
    y = int(lines[1])
    return x + y

input_data = In[2]
result = sum_function(input_data)
print(result)

这段代码首先定义了一个 sum_function 函数,该函数接受一个字符串作为输入,将其分割成行,并将前两行转换为整数进行求和。然后,它从 In[2] 获取输入数据,将其传递给 sum_function 函数,并打印结果。

注意事项

  • In 和 Out 对象只存储已执行的单元格的内容和输出。如果单元格未执行,则无法访问其内容。
  • In 存储的是代码的字符串形式,因此需要使用 exec() 函数执行代码,或使用字符串处理函数提取数据。
  • Out 存储的是输出结果,其类型取决于单元格的输出类型。
  • 使用 exec() 函数执行代码时需要谨慎,因为它可能存在安全风险,尤其是在执行来自不可信来源的代码时。

总结

通过使用 IPython 的 In 和 Out 对象,我们可以方便地访问和使用 Jupyter Notebook 单元格中的代码和输出。这种方法在自动化测试、教学演示等场景中非常有用,可以提高工作效率和代码的可维护性。记住在使用 exec() 函数时要谨慎,并确保代码的安全性。

热门AI工具

更多
火山引擎

火山引擎是一款面向企业的云计算与AI服务平台。

UP简历
UP简历 Hot

一款AI办公效率工具,主要用于基于AI技术的免费在线简历制作工具,适合需要提升相关任务效率的用户。

UpDream
UpDream Hot

一款AI视频创作工具,主要用于哔哩哔哩推出的自研AI视频创作工具,适合需要提升相关任务效率的用户。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

蛙蛙写作

一款AI论文写作工具,主要用于超级AI智能写作助手,适合需要提升相关任务效率的用户。

PixTV
PixTV Hot

PixTV是一款面向AIGC内容创作的AI视频生成工具。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

咔片AIPPT

一款在线AI演示文稿制作工具,可根据主题和内容需求辅助生成PPT结构与页面,提高演示材料制作效率。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

相关专题

更多
js 字符串转数组
js 字符串转数组

js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。

1638

2023.08.03

js截取字符串的方法
js截取字符串的方法

js截取字符串的方法有substring()方法、substr()方法、slice()方法、split()方法和slice()方法。本专题为大家提供字符串相关的文章、下载、课程内容,供大家免费下载体验。

2464

2023.09.04

java基础知识汇总
java基础知识汇总

java基础知识有Java的历史和特点、Java的开发环境、Java的基本数据类型、变量和常量、运算符和表达式、控制语句、数组和字符串等等知识点。想要知道更多关于java基础知识的朋友,请阅读本专题下面的的有关文章,欢迎大家来php中文网学习。

5944

2023.10.24

字符串介绍
字符串介绍

字符串是一种数据类型,它可以是任何文本,包括字母、数字、符号等。字符串可以由不同的字符组成,例如空格、标点符号、数字等。在编程中,字符串通常用引号括起来,如单引号、双引号或反引号。想了解更多字符串的相关内容,可以阅读本专题下面的文章。

5269

2023.11.24

java读取文件转成字符串的方法
java读取文件转成字符串的方法

Java8引入了新的文件I/O API,使用java.nio.file.Files类读取文件内容更加方便。对于较旧版本的Java,可以使用java.io.FileReader和java.io.BufferedReader来读取文件。在这些方法中,你需要将文件路径替换为你的实际文件路径,并且可能需要处理可能的IOException异常。想了解更多java的相关内容,可以阅读本专题下面的文章。

6994

2024.03.22

php中定义字符串的方式
php中定义字符串的方式

php中定义字符串的方式:单引号;双引号;heredoc语法等等。想了解更多字符串的相关内容,可以阅读本专题下面的文章。

9834

2024.04.29

go语言字符串相关教程
go语言字符串相关教程

本专题整合了go语言字符串相关教程,阅读专题下面的文章了解更多详细内容。

4999

2025.07.29

c++字符串相关教程
c++字符串相关教程

本专题整合了c++字符串相关教程,阅读专题下面的文章了解更多详细内容。

5307

2025.08.07

FrankenPHP集成Laravel详细教程
FrankenPHP集成Laravel详细教程

本专题提供FrankenPHP集成Laravel的详细配置指南,全面解析运行原理、开发环境搭建、Caddyfile配置、Octane工作模式、数据库连接、队列任务、定时任务和生产环境优化,解决部署过程中常见的报错与兼容性问题。

40

2026.10.08

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn