Ipython 笔记本:导入脚本函数的名称错误

2023-12-29

我有两个脚本sources.py and nest.py。他们是这样的

来源.py

import numpy as np
from nest import *

def make_source():
    #rest of the code

def detect():
    Nest = nest()
    Nest.fit() 

if __name__=='main':
    detect()

nest.py

import numpy as np
from sources import *

class nest(object):

    def _init_(self):
        self.source = make_source()

    def fit(self):
        #rest of the code

当我运行脚本时python sources.py效果很好。

但在 Ipython 笔记本环境中如果我执行以下操作

In [1]: from sources import *

In [2]: detect()

我收到以下错误

---------------------------------------------------------------------------
NameError                                 Traceback (most recent call last)
<ipython-input-5-e9c378341590> in <module>()
---->  detect()

C:\sources.pyc in detect()
--> 7 Nest = nest()

C:\nest.pyc in _init_()
--> 7 self.source = make_source()

NameError: global name 'make_source' is not defined

我很困惑为什么会发生这种情况。您能否告诉我这两种情况有何不同以及如何解决这个问题?


问题是,两者之间是有区别的

import something

and

from something import *

关于命名空间。

如果您有递归导入,最好永远不要执行“from Something import *”或“import some as someotherthing”

您可以在这里得到完整的解释:

Python 中的循环(或循环)导入 https://stackoverflow.com/questions/744373/circular-or-cyclic-imports-in-python

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Ipython 笔记本:导入脚本函数的名称错误 的相关文章

  • 美丽的汤从谷歌搜索中提取href

    谷歌搜索给出了以下 HTML 的第一个结果 h3 class r a href https rads stackoverflow com amzn click com 0470284889 class l vst em Quantitati
  • Pyenv 无法在 Cygwin 上安装 python: ModuleNotFoundError: No module named '_ctypes'

    我正在尝试设置 Cygwin 环境以使用 pyenv 来管理 python 版本 我没有管理员权限 所以我使用以下命令运行设置 no admin flag 我使用 Cygwin 包管理器应用程序解决了一些依赖关系 但我被困在了这一点上 Mo
  • 无法在 mysql 表中的值中使用破折号(-)[重复]

    这个问题在这里已经有答案了 我一直在尝试从 python 将数据插入 MYSQL 表 我的sql表中的字段是id token start time end time和no of trans 我想存储使用生成的令牌uuid4在令牌栏中 但由于
  • 使用信号时出现 django TransactionManagementError

    我有一个与 django 的用户和 UserInfo 一对一的字段 我想订阅用户模型上的 post save 回调函数 以便我也可以保存 UserInfo receiver post save sender User def saveUse
  • 引发 RuntimeError(f"目录 '{directory}' 不存在") RuntimeError: 导入 fitz 时目录 'static/' 不存在

    当我运行 extract img py 文件时出现此错误 RuntimeError f 目录 directory 不存在 运行时错误 导入 fitz 时不存在目录 static 我不明白为什么这会给我发回此错误消息 我之前看到过关于这个话题
  • 创建一个打开文件并创建字典的函数

    我有一个正在处理的文件 我想创建一个读取文件并将内容放入字典中的函数 然后该字典需要通过 main 函数传递 这是主程序 它无法改变 我所做的一切都必须与主程序配合 def main sunspot dict file str raw in
  • 在 Python 3 中动态导入模块的问题

    我遇到的情况是 在我的 Python 3 项目中 在运行时必须包含某些模块 我在用着importlib import module为了这 第二次更新 我确实找到了一种方法来做一些接近我想要的事情 一些额外的代码可能会使我的一些链接稍微偏离一
  • 可移植的非关系数据库

    我想尝试 尝试非关系数据库 最好的解决方案是 便携式 这意味着它不需要安装 理想情况下 只需将目录复制粘贴到某个地方即可使其工作 我不介意第一次使用时是否需要编辑一些配置文件或运行配置工具 可从 python 访问 适用于 Windows
  • Pyinstaller --onefile 警告文件已存在但不应存在

    跑步时Pyinstaller onefile 并开始得到结果 exe 会出现多个弹出窗口 并显示以下警告 WARNING file already exists but should not C Users myuser AppData L
  • 在函数调用之间保存数据的Pythonic方式是什么?

    对我来说 上下文是我需要在调用修改该值的函数之间保留的单个 int 的信息 我可以使用全局 但我知道这是不鼓励的 现在 我使用了包含 int 的列表形式的默认参数 并利用了可变性 以便在调用之间保留对值的更改 如下所示 def increm
  • 向 Python 2.6 添加 SSL 支持

    我尝试使用sslPython 2 6 中的模块 但我被告知它不可用 安装OpenSSL后 我重新编译2 6 但问题仍然存在 有什么建议么 您安装了 OpenSSL 开发库吗 我必须安装openssl devel例如 在 CentOS 上 在
  • 如何使用 python 操作系统更改驱动器?

    我正在尝试更改当前目录C to Y 我试过 import os os chdir Y 但我不断收到错误消息 提示无法找到驱动器 本质上我正在寻找相当于 cd d cmd 中的命令 你确定吗Y 确实是有效的驱动器号吗 Try os chdir
  • 提交表格并上传带有请求的文件

    我正在努力提交特定的表格蟒蛇请求 http www python requests org 我想使用它的网站上的其他表单工作正常 我可以提交登录表单等 这只是我遇到问题的文件上传 显然 提交表单效果很好 因为我从网站收到一条消息 说 请返回
  • 如何在matplotlib中基于x轴更改直方图颜色

    我有根据 pandas 数据框计算出的直方图 我想根据 x 轴值更改颜色 例如 If the value is 0 the color should be green If the value is gt 0 the color shoul
  • 在Python中计算结构体的CRC

    我有以下结构 来自 C 中的 NRPE 守护程序代码 typedef struct packet struct int16 t packet version int16 t packet type uint32 t crc32 value
  • python中打印字符串的长度

    有没有什么方法可以找到 即使是最好的猜测 Python中字符串的 打印 长度 例如 potaa bto 是 8 个字符len但 tty 上只打印 6 个字符宽 预期用途 s potato x1b 01 32mpotato x1b 0 0mp
  • 请求response.iter_content()获取不完整的文件(1024MB而不是1.5GB)?

    您好 我一直在使用此代码片段从网站下载文件 到目前为止 小于 1GB 的文件都很好 但我注意到 1 5GB 文件不完整 s is requests session object r s get fileUrl headers headers
  • 如何使用数据库在 Django 中的应用程序之间交换数据?

    我正在使用 Django 在网络上工作 我创建了 2 个应用程序 第一个用于客户端注册并将其数据添加到数据库 第二个应用程序供用户访问和查看交互界面 这个想法是使用第二个应用程序从数据库中的客户端获取数据 并使用它向用户显示一些信息 我的问
  • 网页抓取 - 如何识别网页上的主要内容

    给定一个新闻文章网页 来自任何主要新闻来源 例如时报或彭博社 我想识别该页面上的主要文章内容 并丢弃其他杂项元素 例如广告 菜单 侧边栏 用户评论 在大多数主要新闻网站上都可以使用的通用方法是什么 有哪些好的数据挖掘工具或库 最好是基于Py
  • Selenium Python 使用代理运行浏览器[重复]

    这个问题在这里已经有答案了 我正在尝试编写一个非常简单的脚本 该脚本从 txt 文件获取代理 不需要身份验证 并用它打开浏览器 然后沿着代理列表循环此操作一定次数 我确实知道如何打开 txt 文件并使用它 我的主要问题是让代理正常工作 我见

随机推荐

  • 包含关键字的 Linq 不同记录

    我需要根据汽车关键字搜索返回不同的记录列表 例如 Alfa 147 问题是 由于我有 3 辆 Alfa 汽车 它返回 1 3 条记录 似乎 1 表示 Alfa 和 147 结果 3 表示 Alfa 结果 EDIT SQL Server 查询
  • gitolite 后接收挂钩未触发

    In my gitolite rc我有的文件 LOCAL CODE gt ENV HOME gitolite local 然后在ENABLE我已启用的同一文件的部分repo specific hooks ENABLE gt COMMANDS
  • 将录制的 Twilio 音频发送到 Lex

    目前我可以录制用户输入 将录制 URL 传递给所需的函数 并在本地下载音频文件 我试图对音频文件执行的操作是获取音频文件的缓冲区以发送到 Lex 或者将其转换为 Lex 需要的格式 根据 AWS 文档 输入流参数值接受以下值 var par
  • Java:网络设置窗口

    我正在寻找一种方法来对带有点的文本字段进行编程 例如 Windows 网络设置对话框中的点 参见 gt gt https i stack imgur com gayeY jpg https i stack imgur com gayeY j
  • PrimeFaces 的惰性数据模型加载方法未调用

    我碰巧不明白为什么我的加载方法没有在我的 primefaces 表的惰性数据模型中调用 我的 xhtml 页面是这样的
  • Heroku:当我执行“heroku run console”时,我需要付费吗?

    我分别运行了三个命令 bash console and node 当我做heroku ps我明白了 heroku ps Process State Command run 1 complete for 11m console run 2 c
  • Pl/SQL 嵌套过程异常处理

    这是关于通过多个级别的 PL SQL 过程进行错误处理的最佳实践问题 我查看了其他一些问题来帮助我解决问题 特别是this one https stackoverflow com questions 7360565 pl sql excep
  • 运行spring boot原生应用程序,无法加载资源文件

    我正在尝试将 Spring Boot 应用程序编译为本机应用程序并使用 docker 运行它 我使用的是 spring graalvm native 版本 0 8 5 和 Spring Boot 版本 2 4 1 我正在尝试使用 sprin
  • aws ec2:如何从ubuntu实例内部知道公共IP [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我创建了一个 amazon web services 实例并使用 Ubuntu 14 04 amazon 机器映像 现在我可以 ssh 进
  • Notepad++ 崩溃后显示空值

    我正在 Notepad 中编辑保存的文件 不幸的是 我没有关闭 Notepad 应用程序 PC 由于电池电量耗尽而断电 当电源重新打开时 我打开我的文件 发现只有 nul nul nul nul nul 这是一个文本文件 我正在其中保存 x
  • 无法在 PowerShell 中将字符串转换为 int

    我正在尝试使用 PowerShell 将字符串转换为整数 然而 它不断告诉我 我没有有效的号码 尽管我确信我有 首先 这是我如何获取变量以及类型的打印输出等 以确保有效性 obj New Object TypeName PSCustomOb
  • 如何使用SQL Server 2008 Reporting Services的WebService

    我创建了一个报表并将其发布到 Report Server 2008 效果很好 我可以打电话http 服务器名称 81 报告在我的浏览器中查看并导出报告 我现在想做的是编写一个应用程序 使用该报告创建一个 Excel 文件 根据 Report
  • 如何根据第一个下拉列表的选择更新第二个下拉列表?

    我有两个 DropDownListFor 助手 第二个的 SelectList 取决于第一个助手中选择的值 因此 我需要做的是 当用户从第一个 DropDownListFor 帮助器中选择一个值时 必须使用正确的值更新第二个 DropDow
  • WPF Button.IsCancel 属性如何工作?

    取消按钮背后的基本思想是通过 Escape 按键关闭窗口 您可以设置 IsCancel 属性 取消按钮设置为 true 导致 取消按钮自动关闭 对话框不处理 Click 事件 来源 WPF 编程 Griffith 销售 所以这应该有效
  • Rails 3 中的类表继承

    我目前正在开发一个 Rails 3 应用程序 它看起来可能需要对几个模型使用类表继承 这是正在发生的事情的一个简化示例 我有一个名为 Person 的类 具有诸如姓名 电子邮件 密码之类的通用属性 这些属性对于应用程序中的所有类型的人来说都
  • Mysql 两个日期时间列之间

    我有以下代码 但它似乎没有产生预期的结果 date from 2012 04 27 18 19 33 date to 2012 05 29 00 59 57 database gt connect ancestors mysql query
  • 想要手动发送SYN ACK数据包来建立TCP连接(如果可能的话在PHP中)

    如何在 php ini 中将自己的 SYN 和 ACK 数据包发送到服务器 我不想让系统做任何事情 我想创建自己的数据包 并自己发送它们以建立 TCP 连接 这可以在 php 中完成吗 或者我是否必须使用 C 来完成此操作 或者可能是 py
  • ForwardRef 警告 React-hook-forms 与 Material UI TextField

    我正在尝试使用 React hook forms 和 Material UI 的输入构建一个表单 在本例中是我的 TextField 的自定义变体 尽管该表单似乎工作完全正常 但在渲染表单时它会在控制台中触发警告消息 警告 不能给函数组件提
  • 在开发模式之外调试 GWT 应用程序?

    我似乎记得在截屏视频中看到有人将 Java 调试器附加到已编译 部署的 GWT 应用程序 这可能吗 我发现一些关于配置一个特殊的 调试模块 来扩展常规模块的稀疏提及 但细节很少 Thanks 您可以使用开发模式来调试已部署的应用程序 但您将
  • Ipython 笔记本:导入脚本函数的名称错误

    我有两个脚本sources py and nest py 他们是这样的 来源 py import numpy as np from nest import def make source rest of the code def detec