如何测试一个python模块是否已导入?

2024-01-13

如何测试Python中的模块是否已导入?

例如我需要基础知识:

if not has_imported("sys"):
   import sys

also

if not has_imported("sys.path"): 
   from sys import path

Thanks!

Rgs.

感谢您的所有评论: 代码已粘贴在这里。自动导入文件夹中的所有子模块,然后调用同名函数 - python 运行时检查相关 https://stackoverflow.com/questions/5037468/auto-import-all-sub-modules-in-a-folder-then-invoke-same-name-functions-python


如果您想通过不导入两次来进行优化,可以省去麻烦,因为 Python 已经处理了这个问题。

If you need这是为了避免NameErrors或者其他什么:修复你的草率编码 - 确保你不需要这个,即在使用之前定义(导入)所有内容(在导入的情况下:一次,在启动时,在模块级别)。

如果您确实有充分的理由:sys.modules是一个字典,包含已导入某处的所有模块。但它只包含模块,并且由于方式from <module> import <variable>有效(照常导入整个模块,从中提取导入的内容),from sys import path只会添加sys to sys.modules(如果启动时尚未导入)。from pkg import module adds pkg.module正如您可能期望的那样。

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

如何测试一个python模块是否已导入? 的相关文章

  • httplib.BadStatusLine: '' 在 Linux 上,但在 Mac 上则不然

    这个错误已经困扰我几个小时了 我决定编写一个单独的项目 只是为了看看我是否可以复制它 而且我可以 但只能在我的服务器上复制 这适用于我的 Mac Mac OSX El Capitan 10 11 6 服务器 CentOS 7 2 1511
  • 在Linux中的端口80上运行flask[重复]

    这个问题在这里已经有答案了 也许以前有过这个问题的答案 所以请重定向我 如果是这样的话 我正在考虑在端口 80 上运行 Flask 所以我检查了是否有任何东西正在使用端口 80 因为事实证明端口 80 没有运行 所以当我输入以下内容时 if
  • 如何从数据库模式自动生成示例 Django 应用程序?

    我正在评估概念验证应用程序的框架 该应用程序的生命周期约为 30 天 之后它将被遗忘或完全重写 我已确定要从现有数据库模式自动生成示例应用程序 然后调整视觉设计的某些方面 我看过一个演示红宝石 on Rails 它会为数据库中的每个表自动生
  • Django 和 AWS 简单电子邮件服务 [重复]

    这个问题在这里已经有答案了 我正在尝试启动并运行 django 站点 并且正在尝试启用 django 的标准密码重置服务 我的网站由 AWS EC2 托管 因此我想将 AWS SES 用于我的电子邮件服务 但是 我无法使 smtp 连接正常
  • Python绕相机轴旋转图像

    假设我有一个图像 是在对某些原始图像应用单应性变换 H 后获得的 未显示原始图像 将单应性 H 应用于原始图像的结果是该图像 我想围绕合适的轴 可能是相机所在的位置 如果有的话 将此图像旋转 30 度以获得此图像 如果我不知道相机参数 如何
  • gcloud app deploy:此部署有太多文件

    当我尝试通过 gcloud 部署我的 GAE 应用程序时 出现以下错误 Updating service default failed ERROR gcloud app deploy Error Response 400 This depl
  • 是什么原因导致“当测试模块已实例化时无法配置测试模块”?

    这是我的测试 describe ValueService gt it getValue should return real value gt expect true toBeTruthy 我有这个错误 失败 当测试模块已实例化时 无法配置
  • Pandas cut 方法不包括下限

    我正在尝试对包含 0 到 100 范围内的年龄的数据帧列进行分箱 当我尝试使用垃圾箱来包含零年龄时 它不起作用 这是一个使用包含我的数据范围的列表的演示 pd cut pd Series range 101 0 24 49 74 100 范
  • 点击后 Dash DropDown 关闭

    我不希望下拉菜单在选择值后关闭 我希望它在我的页面上保持打开状态 我正在使用 dcc Dropdown dcc Dropdown id job type options self options placeholder Select one
  • PRAW 出现 SSLError?

    我正在尝试开始使用 PRAW 但在使用 login 时遇到问题 我有以下代码 import praw r praw Reddit This is a test bot r login myRedditUsername password 我收
  • Python/Scipy 2D 插值(非均匀数据)

    这是我上一篇文章的后续问题 Python Scipy 插值 地图坐标 https stackoverflow com questions 5124126 python scipy interpolation map coordinates
  • 在 Pyinstaller、语音识别和 Pyttsx3 中使用“-w”时,PySimpleGUI 中出现“OSError:[WinError 6] 句柄无效”

    所以我用 PySimpleGUI 创建了一个程序 然后用 Pyinstaller 从它创建了 exe 文件 这是我的命令 pyinstaller hidden import pyttsx3 drivers hidden import pyt
  • 提取二值图像中的最中心区域

    我正在处理二进制图像 之前使用此代码来查找二进制图像中的最大区域 Use the hue value to convert to binary thresh 20 thresh thresh img cv2 threshold h thre
  • 尝试安装 python 包 Box2D 时出错

    我正在尝试通过 pip 安装 Box2D 软件包的版本 2 3 10 但是 pip 返回以下错误消息 ERROR Could not find a version that satisfies the requirement Box2D 2
  • Python 日志记录 - 如何检查记录器是否为空

    我刚刚在我的应用程序中实现了日志记录 我想知道是否有一种方法可以检查记录器是否为空 我的想法是在我的脚本中设置两个处理程序 一个用于带水平仪的控制台WARNING 一个用于带级别的文件DEBUG 在脚本的最后 我需要检查是否CONSOLE记
  • Kivy错误(python 2.7):sdl2导入错误

    我尝试在我的 Python 2 7 项目 在 PyCharm Windows 10 环境中 上使用 kivy 但出现以下错误 如果有人可以帮助我吗 谢谢 PS 我多次尝试卸载 重新安装库等 并按照像这样的帖子上的建议进行操作 但它不起作用
  • Django - 从时间戳获取不同的日期

    我正在尝试按日期过滤用户 但直到我可以找到数据库中用户的第一个和最后一个日期为止 虽然我可以让我的脚本稍后过滤掉重复项 但我想从一开始就使用 Django 来完成此操作distinct因为它显着减少 我试过 User objects val
  • 打包布尔数组需要通过 int (numpy 1.8.2)

    我正在寻找更紧凑的方式来存储布尔值 numpy 内部需要 8 位来存储一个布尔值 但是np packbits允许打包 他们 这真是太酷了 问题是要打包在4e6字节数组a32e6字节我们需要首先使用的布尔值数组256e6字节将布尔数组转换为
  • Python,质数检查器[重复]

    这个问题在这里已经有答案了 你好 我正在创建一个函数来检查一个数字是否是素数 但它告诉我 9 是一个素数 def eprimo num if num lt 2 return False if num 2 return True else f
  • 在 python 中,VSCode 调试器不会单步执行外部代码。无法弄清楚如何编辑 launch.json 中的“justMyCode”

    我一直在提到https code visualstudio com docs python debugging justmycode https code visualstudio com docs python debugging jus

随机推荐

  • 如何通过 XHR onProgress 函数使用压缩/压缩内容?

    我之前见过很多类似的问题 但我还没有找到一个能够准确描述我当前问题的问题 所以这里是 我有一个页面通过 AJAX 加载一个大的 0 5 到 10 MB 之间 JSON 文档 以便客户端代码可以处理它 加载文件后 我不会遇到任何意外的问题 但
  • CakePHP 3 控制器事件实现示例

    CakePHP 3 0 文档包含如何使用模型创建事件的示例 我试了又试 但它不适合我 有谁有使用自定义事件的 CakePHP 3 x 示例 其中控制器在触发事件的控制器中设置变量 假设我们有一个管理仪表板 您希望使用事件将一些代码注入其中
  • 我真的需要为 const 对象实现用户提供的构造函数吗?

    我有代码 class A public A default private int i 1 int main const A a return 0 它在 g 上编译得很好 参见ideone http ideone com PryGs5 但在
  • 看不到远程分支

    我仍在学习 git 不确定一些基本的东西是如何工作的 我通过执行以下操作创建了本地分支 git branch AppStore 我不记得如何将该分支推送到 github com 但我可以在存储库上看到 MyBranch 当我做 git br
  • AngularJS 模块和外部控制器

    我有一个包含多个容器的页面 每个容器都有自己的控制器 但指向一个工厂 该工厂处理与 Web 服务 API 交互的所有逻辑 我想为每个控制器都有一个单独的文件BUT我希望所有这些都在一个模块中 我一生都找不到如何将不同文件中的控制器包含到一个
  • 我无法运行超过 100 个进程

    我有大量的 shell 命令通过授权服务的 AuthorizationExecuteWithPrivileges 调用以 root admin 权限执行 问题是 一段时间后 10 15 秒 可能是 100 个 shell 命令 程序停止响应
  • iOS 7 启动图像,仅在设备上显示黑屏

    我至少在 stakoverflow 检查了与此问题相关的所有问题 答案 但没有任何成功 到目前为止我的问题是 我创建了一个新的应用程序 目标 IOS 7 并且我在图像中添加了我的启动图像和我的应用程序图标 xcassets 文件夹 当我在模
  • Eigen:返回对带有编译时维度检查的矩阵块的引用

    我要问的是一个概括这个问题 https stackoverflow com questions 13548253 eigen library return a matrix block in a function as lvalue 具体来
  • 在 UITableViewCell 内编辑 UITextField 时禁用 UITableView 自动滚动

    我正在使用自定义UITableViewCell在我的里面UITableView 这些中的每一个UITableViewCells 相当高并且包含UITextField在顶部 当用户点击UITextField为了编辑它 会出现一个键盘 然后UI
  • C++ 中的静态函数调用非静态函数 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我有一堂课 比如 Class Tes
  • Spring 4 Websocket - 没有任何反应

    我正在学习 spring 4 websocket 如果有人可以指导我逐步学习 spring 4 websocket 或者可以推荐一些书籍 让我可以在其中找到有关上述主题的逐步实用方法 我将非常感激 但在此之前 我尝试使用 tomcat 8
  • 如何解释 PyPi 包名称中的命名约定

    这可以在许多软件包中找到 例如这个 https pypi python org pypi pip https pypi python org pypi pip pip 9 0 1 py2 py3 none any whl 如何解释这个命名约
  • Rails 4 - 如果条件不适用

    我想创建一个具有某些条件的范围 其中返回的不是特定范围 目前 该解决方案有效 scope my scope gt my var scope where TRUE if my var condition1 scope scope where
  • 是否有可用于 ASP.NET MVC 开发的附加库或工具?

    我的第一次经历ASP NET MVC实体框架引起了我对这个框架的兴趣 我想实现一些基本的应用程序 涵盖现实世界 Web 应用程序的基本要求 到目前为止 VS 2008 提供的支持已经令人印象深刻 然而 对于某些领域 使用现有的附加组件或各种
  • 通过 ES6 模块导入加载和使用旧版 JS 模块(例如 IIFE)

    I have IIFE https developer mozilla org en US docs Glossary IIFE旧应用程序中需要适用于 IE10 的某些库代码的函数 无 ES6 模块加载等 但是 我开始开发一个将使用 ES6
  • 如果我想添加 CSS 我应该将其粘贴到哪里?

    这是我需要添加 CSS 的页面 http upload wikimedia org wikipedia commons a a5 Map of USA with state names svg http upload wikimedia o
  • 如何从android中的recyclerView中删除项目

    在我的应用程序中 我应该使用 recyclerView 并删除一些项目 我想从中删除一些项目recyclerview为此 我在以下代码中编写Adapter public class MyAdapter extends RecyclerVie
  • Rails 数据禁用-带有重新启用按钮

    我有一个具有 JavaScript 验证功能的 Rails Devise 表单 当用户按下提交时 验证就会开始工作 并且用户会重新关注他们需要的表单 但是 rails 使用 data disable with 在单击按钮后禁用该按钮 因此在
  • 对函数中的变量进行分组

    我有一种感觉 这是如此明显 当 如果 解决时我会感到羞愧 但我就是无法让它发挥作用 我有一个 html javascript 页面 其中包含多个项目 所有项目都需要通过用户点击来显示或隐藏 所以我有 x 数量的 div 例如 div sty
  • 如何测试一个python模块是否已导入?

    如何测试Python中的模块是否已导入 例如我需要基础知识 if not has imported sys import sys also if not has imported sys path from sys import path