Jupyter Notebook 中 %run 魔法命令

目录

    • 基本用法
      • 运行 Python 脚本
      • 运行 Jupyter Notebook 的其他单元格
      • 传递命令行参数
    • 示例
      • 运行 Python 脚本示例
      • 运行其他 Jupyter Notebook 示例
      • 传递命令行参数示例
    • 注意事项
    • 与 `import` 命令的区别
      • `%run`
      • `import`
    • 结论

%run 是 Jupyter Notebook 中的一个强大工具,它允许你运行 Python 脚本或 Jupyter Notebook 的其他部分,并将它们的变量、函数和类导入到当前的会话中。以下是 %run 命令的详细说明和常见用法。

在这里插入图片描述

基本用法

运行 Python 脚本

使用以下命令来运行一个 Python 脚本:

%run script.py

这将导入 script.py 中定义的所有变量、函数和类。

运行 Jupyter Notebook 的其他单元格

通过以下命令来运行另一个 Jupyter Notebook:

%run other_notebook.ipynb

这将导入 other_notebook.ipynb 中定义的所有代码、变量、函数和类。

传递命令行参数

如果需要,可以在 %run 命令后添加参数:

%run script.py arg1 arg2

这些参数将作为 sys.argv 列表的一部分在脚本中处理。

示例

运行 Python 脚本示例

假设有一个脚本 example.py

# example.py
def greet(name):
    print(f"Hello, {name}!")

greet("Alice")

在 Jupyter Notebook 中运行它:

%run example.py

输出将是:

Hello, Alice!

运行其他 Jupyter Notebook 示例

如果有一个 other_notebook.ipynb,运行它:

%run other_notebook.ipynb

传递命令行参数示例

如果 example.py 修改为接受命令行参数:

# example.py
import sys

def greet(name):
    print(f"Hello, {name}!")

if __name__ == "__main__":
    greet(sys.argv[1])

在 Jupyter Notebook 中运行并传递参数:

%run example.py Bob

输出将是:

Hello, Bob!

注意事项

  • 使用 %run 命令时,所有脚本或笔记本中的代码都将在当前 Jupyter Notebook 会话中执行。
  • 如果执行过程中出现错误,%run 命令将中断并显示错误信息。

import 命令的区别

虽然 %runimport 都可以加载代码,但它们有不同的用途和行为:

%run

  • 是 Jupyter Notebook 的专用魔术命令。
  • 用于直接运行外部 Python 脚本文件。
  • 执行后,脚本中定义的内容将在当前 Notebook 环境中可用。
  • 通常用于加载辅助性代码或设置。

import

  • 是 Python 的标准语法,用于引入模块或包。
  • 导入的模块在整个 Python 会话中可用。
  • 通常用于加载需要在代码中多次使用的库或模块。

结论

根据你的具体需求,在 Jupyter Notebook 中选择使用 %runimport%run 更适合运行独立的脚本,而 import 适用于引入可重用的模块。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/718948.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【机器学习】第4章 决策树算法(重点)

一、概念 1.原理看图,非常简单: (1)蓝的是节点,白的是分支(条件,或者说是特征,属性,也可以直接写线上,看题目有没有要求), &#xff0…

MySQL----InooDB行级锁、间隙锁

行级锁 行锁,也称为记录锁,顾名思义就是在记录上加的锁。 注意: InnoDB行锁是通过给索引上的索引项加锁来实现的,而不是给表的行记录加锁实现的,这就意味着只有通过索引条件检索数据,InnoDB才使用行级锁…

【开发工具】git服务器端安装部署+客户端配置

自己安装一个轻量级的git服务端,仅仅作为代码维护,尤其适合个人代码管理。毕竟代码的版本管理是很有必要的。 这里把git服务端部署在centos系统里,部署完成后可以通过命令行推拉代码,进行版本和用户管理。 一、服务端安装配置 …

【Kubernetes】k8s--安全机制

机制说明 Kubernetes 作为一个分布式集群的管理工具,保证集群的安全性是其一个重要的任务。API Server 是集群内部各个组件通信的中介, 也是外部控制的入口。所以 Kubernetes 的安全机制基本就是围绕保护 API Server 来设计的。 比如 kubectl 如果想向 …

新版FMEA培训内容中关于团队协作的部分可以怎么展开?

团队协作,作为新版FMEA的核心要素之一,其重要性不言而喻。在FMEA的分析过程中,团队成员的密切合作与沟通是确保分析全面性和准确性的关键。通过团队协作,不同领域的专家能够共同参与到潜在故障模式的识别、评估与预防中来&#xf…

解决ubuntu22.04共享文件夹问题

刚开机发现ubuntu里面的共享文件夹访问不了了 ubuntuwxy:/mnt/hgfs$ ls找了几篇博客,设置如下指令即可,记得退出当前目录重新进入刷新一下 sudo vmhgfs-fuse .host:/ /mnt/hgfs/ -o allow_other -o uid1000 仅供参考

针对indexedDB的简易封装

连接数据库 我们首先创建一个DBManager类,通过这个类new出来的对象管理一个数据库 具体关于indexedDB的相关内容可以看我的这篇博客 indexedDB class DBManager{}我们首先需要打开数据库,打开数据库需要数据库名和该数据库的版本 constructor(dbName,…

[WTL/Win32]_[中级]_[MVP架构在实际项目中应用的地方]

场景 在开发Windows和macOS的界面软件时,Windows用的是WTL/Win32技术,而macOS用的是Cocoa技术。而两种技术的本地语言一个主打是C,另一个却是Object-c。界面软件的源码随着项目功能增多而增多,这就会给同步Windows和macOS的功能造成很大负担…

Aigtek高压放大器在柔性爬行机器人驱动性能研究中的应用

实验名称:柔性爬行机器人的材料测试 研究方向:介电弹性体的最小能量结构是一种利用DE材料的电致变形与柔性框架形变相结合设计的新型柔性驱动器,所谓最小能量是指驱动器在平衡状态时整个系统的能量最小,当系统在外界的电压刺激下就…

开发一个python工具,pdf转图片,并且截成单个图片,然后修整没用的白边

今天推荐一键款本人开发的pdf转单张图片并截取没有用的白边工具 一、开发背景: 业务需要将一个pdf文件展示在前端显示,但是基于各种原因,放弃了h5使用插件展示 原因有多个,文件资源太大加载太慢、pdf展示兼容性问题、pdf展示效果…

应急便携式气象观测站

TH-BQX5自然灾害,如台风、暴雨、洪涝、干旱等,给人们的生命财产安全带来了巨大威胁。在应对这些灾害时,准确的气象观测数据是制定有效应对策略的基础。近年来,应急便携式气象观测站在自然灾害的监测和预警中发挥了越来越重要的作用…

在 Blazor 中在子组件和父组件之间共享数据

介绍 可以在Blazor 中创建一个子组件并在另一个组件中重用它。我们将非常轻松地在这些组件之间共享数据。我们将创建一个自定义文本框作为子组件。此自定义文本框将显示文本框中的当前字符数,并在需要时限制字符总数。我将逐步解释所有操作。 在 Visual Studio 中…

购物App需要进行软件测试吗?包括哪些测试内容?

随着移动互联网的飞速发展,购物App在人们的日常生活中扮演着越来越重要的角色。然而,由于App开发的复杂性和用户对于购物体验的高要求,保证App的质量成为了一项重要的任务。而软件测试作为确保App质量的关键环节,也日益受到重视。…

文件操作(1)(C语言版)

前言: 为什么要学习文件操作: 1、如果大家写过一些代码,当运行结束的时候,这些运行结果将不复存在,除非,再次运行时这些结果才能展现在屏幕上面,就比如之前写过的通讯录。 现实中的通讯录可以保…

智游剪辑手机版发布!

耗时一个多月,手机版终于开发的差不多了,下面带大家一起来看下效果咋样吧! 功能介绍 打开应用就可以直接看到我们的所有功能了,支持分类查看和关键词搜索功能,每个功能都可以查看帮助教程和收藏,点击即可进…

Day40

Day40 监听器 概念: 监听器用于监听web应用中某些对象信息的创建、销毁、增加,修改,删除等动作的 发生,然后作出相应的响应处理。当范围对象的状态发生变化的时候,服务器自动调用 监听器对象中的方法。 常用于统计在线…

AWS——01篇(AWS入门 以及 AWS之EC2实例及简单实用)AWS

AWS——01篇(AWS入门 以及 AWS之EC2实例及简单实用) 1. 前言 2. 创建AWS账户 3. EC2 3.1 启动 EC2 新实例 3.1.1 入口 3.1.2 设置名称 选择服务 3.1.3 创建密钥对 3.1.4 网络设置——安全组 3.1.4.1 初始设置 3.1.4.2 添加安全组规则(开放新…

0X0-基于Sklearn的机器学习入门:聚类(上)

本节及后续章节将介绍深度学习中的几种聚类算法,所选方法都在Sklearn库中聚类模块有具体实现。本节为上篇,将介绍几种相对基础的聚类算法,包括K-均值算法和均值漂移算法。 目录 X.1 聚类概述 X.1.1 聚类的种类 X.1.2 Sklearn聚类子模块 …

【JVM结构、JVM参数、JVM垃圾回收】

JVM:Java Virtual Machine java虚拟机 虚拟机:使用软件技术模拟出与具有完整硬件系统功能、运行在一个隔离环境中的计算机系统。 JVM官方文档:https://docs.oracle.com/javase/specs/jvms/se8/html/index.html java 一些命令 javac 将文件编…

【C++入门(3)】函数重载、引用

一、函数重载 1、函数重载概念 函数重载是指在同一作用域中,具有不同形参列表(参数的 个数 或 类型 或类型顺序 不同)的同名函数。 C语言中不允许同名函数的存在,如果一个程序中有两个函数的函数名完全相同,就会报错…