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

花韻仙語
发布: 2025-11-16 11:46:18
原创
329人浏览过

从 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() 函数执行了第一个单元格中的代码。

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

来画数字人直播
来画数字人直播

来画数字人自动化直播,无需请真人主播,即可实现24小时直播,无缝衔接各大直播平台。

来画数字人直播 0
查看详情 来画数字人直播

假设第一个单元格(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() 函数时要谨慎,并确保代码的安全性。

以上就是从 Jupyter Notebook 单元格直接获取 Python 输入数据的详细内容,更多请关注php中文网其它相关文章!

最佳 Windows 性能的顶级免费优化软件
最佳 Windows 性能的顶级免费优化软件

每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号