有没有类似Python导出的东西?

2023-11-27

我们一直使用 python 的导入机制来导入模块、变量和其他东西。但是,有什么可以作为导出的吗?喜欢:

我们从模块导入东西:

from abc import *

那么我们可以像这样导出吗?:

to xyz export *

或者 将a、b、c导出到program.py

我知道这个问题不是在这里问的典型问题类型..但只是出于好奇..我检查了python控制台,没有任何东西作为“导出”存在..也许它以不同的名称存在。 .?


首先,导入您想要导出内容的模块,这样您就可以引用它。然后将要导出的内容分配为模块的属性:

# to xyz export a, b, c
import xyz
xyz.a = a
xyz.b = b
xyz.c = c

要进行通配符导出,您可以使用循环:

# to xyz export *
exports = [(k, v) for (k, v) in globals().iteritems() if not k.startswith("_")]
import xyz
for k, v in exports: setattr(xyz, k, v)

(请注意,我们收集要导出的对象列表before导入模块,这样我们就可以避免导出对刚刚导入的模块的引用。)

这基本上是猴子修补的一种形式。它有它的时间和地点。当然,为了让它工作,执行“导出”的模块本身必须被执行;简单地导入将要修补的模块不会神奇地意识到某个地方的其他代码将对其进行修补。

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

有没有类似Python导出的东西? 的相关文章

随机推荐

  • 使用 AFNetworking 2.0 的 POST 请求 - AFHTTPSessionManager

    Hej 我正在努力向解析 REST API 发出 POST 请求 我正在使用 AFNetworking 2 0 我的 AFHTTPSessionManager 子类代码如下所示 ParseAPISession sharedSession s
  • 我可以更改 Xcode IDE 字体的大小吗?

    我想更改 Xcode IDE 的 组和文件 面板的字体大小 我知道如何更改首选项中的 字体和颜色 但这些 似乎 只影响代码窗口 而不影响 IDE 的其余部分 有任何想法吗 谢谢 我相信您可以通过设置 PBX 表字体大小参数来更改组和文件窗格
  • 如何制作 TextGeometry 多行?如何将它放在一个正方形内,以便它像 html 文本在 div 内一样换行?

    我正在使用一些 3D 文本WebGL three js and THREE TextGeometry 到目前为止一切正常 我能够创建单行 3D 文本 现在我想创建多行文本 例如一个短段落 最好 我希望它在到达放置它的盒子 矩形的边界时自然包
  • 获取C中动态分配数组的长度[重复]

    这个问题在这里已经有答案了 可能的重复 函数参数中数组的长度 如何获取 C 中动态分配数组的长度 I tried sizeof ptr sizeof ptr 100 但他们没有工作 你不能 您必须将长度作为参数传递给函数 指针的大小就是包含
  • 使用联系人的自定义字段执行某些操作

    我为我的联系人添加了自定义字段 它包括
  • SQL Server 和 SqlDataReader - 万亿条记录 - 内存

    我从未尝试过这个 所以我不知道我是否会遇到内存问题 但是 SqlDataReader 可以读取一万亿条记录吗 全部都正确传输了吗 我对 SQL TDS 协议的幕后功能还不太了解 UPDATE将万亿翻译为非常大的数字 我可能应该说 10 亿或
  • Rails 使用 send_file 发送多个文件

    我目前正在尝试使用 Rails send file 方法将多个文件发送到我的应用程序之外 它循环遍历所有文件 但仅发送目录中的最后一个文件 这是我的代码 Dir foreach dir do entry if entry entry ent
  • 如何处理数据加载器/GraphQL 嵌套查询中的并发 DbContext 访问?

    我正在使用几个使用注入查询服务的数据加载器 这些服务又依赖于 DbContext 它看起来像这样 Field
  • Rails 4 activerecord TypeError nil 不是一个符号

    看来sql server中的一个表正在放置nil在选择语句中 我不知道如何解决这个问题 如果我切换到任何其他表 我可以轻松获取第一条记录 还有其他人处理过这个错误吗 我把桌子拆开并建立了一个视图 它仍然这样做 我对是否要猴子修补这个犹豫不决
  • UITableView行动画持续时间和完成回调

    有没有办法指定 UITableView 行动画的持续时间 或者在动画完成时获取回调 我想做的是在动画完成后闪烁滚动指示器 在此之前进行闪光不会做任何事情 到目前为止 我的解决方法是延迟半秒 这似乎是默认的动画持续时间 即 self tabl
  • “已定义?”和“除非”未按预期工作

    我期待以下片段 var Not Empty unless defined var var gt nil 回来 Not Empty 但我得到了nil 任何关于为什么会发生这种情况的见解 这是 Ruby 中唯一我会称之为 WTF 的时刻之一 你
  • 使用 C# .Net 表达任何能被 60 整除的数字的正则表达式?

    我需要对以秒为单位的输入时间间隔进行验证 现在我不太擅长正则表达式 那么任何人都可以帮助制作一个正则表达式来测试一个数字是否可以被 60 整除吗 我想知道我是否可以使用测试来检查该数字是否可以被 10 整除 然后检查该数字是否可以被 6 整
  • 如何在Python中动态构建树

    一个初学者Python 编程问题 我想在Python中构建一个树结构 最好基于字典 我发现代码可以巧妙地完成此操作 Tree lambda collections defaultdict Tree root Tree 这可以很容易地填充 如
  • 使用delphi枚举本地网络上的Microsoft SQL数据库服务器

    如果我使用 C 我可以使用 net 框架Sql数据源枚举器发现并向用户显示网络上的 SQL Server 实例列表 我怎样才能在德尔福做到这一点 您可以使用网络服务器枚举函数 通过过滤SV TYPE SQLSERVERservertype
  • 如何将 WPF 窗口添加到类库项目[重复]

    这个问题在这里已经有答案了 我今天遇到了这个问题 我想将 WPF 窗口添加到现有的类库项目中 但它不存在于 添加新项 列表中 我找到了一个解决方案 只是想将其发布在这里 因为我在其他地方找不到它 解决方案是在记事本等文本编辑器中打开 csp
  • setOnKeyListener 没有响应

    我是 Android 新手 正在研究书中的待办事项列表示例 我有一个 Activity 它显示一个 EditText 和一个在其下方的 ListView 有一个 onKey 事件应该将 EditText 中的文本添加到 ListView 并
  • Pandas 相当于 Oracle Lead/Lag 函数

    首先 我对熊猫还不熟悉 但我已经爱上了它 我正在尝试实现 Oracle 中的 Lag 函数的等效项 假设您有这个 DataFrame Date Group Data 2014 05 14 09 10 00 A 1 2014 05 14 09
  • Django 按日期或小时记录到文件

    我知道 django 可以记录到一个文件 但我想知道如何在不同的时间打印到不同的文件 文件名如20150101 log 20150102 log 两个问题 我可以通过以下方式实现吗LOGGING gt filename配置 如果Q1不能 我
  • 如何在 php 中验证 google play 应用内购买?

    我希望使用 php 页面通过 google play 验证应用程序中应用程序内购买的收据 我该怎么做呢 我不是 PHP 专家 所以我不会发布任何代码 但总体过程是very直接了当 移植到 PHP 应该非常容易 您需要三件事来验证购买 您的应
  • 有没有类似Python导出的东西?

    我们一直使用 python 的导入机制来导入模块 变量和其他东西 但是 有什么可以作为导出的吗 喜欢 我们从模块导入东西 from abc import 那么我们可以像这样导出吗 to xyz export 或者 将a b c导出到prog