Questions tagged «module»

更大,更复杂的系统的逻辑细分。

4
我可以使用__init__.py定义全局变量吗?
我想定义一个常量,该常量应在包的所有子模块中可用。我以为最好的地方__init__.py在根包的文件中。但是我不知道该怎么做。假设我有几个子包,每个子包都有几个模块。如何从这些模块访问该变量? 当然,如果这是完全错误的,并且有更好的选择,我想知道。

7
红宝石继承vs mixins
在Ruby中,由于您可以包含多个mixin但只能扩展一个类,因此似乎mixins比继承更受青睐。 我的问题:如果您要编写必须扩展/包含的代码才能有用,那么为什么要将它设为类?或换种说法,为什么不总是将其设为模块? 我只能想到您想要一门课的一个原因,那就是是否需要实例化该课。但是,对于ActiveRecord :: Base,您永远不会直接实例化它。那么,它不应该是一个模块吗?

8
__getattr__在模块上
如何实现等效的 __getattr__在类,模块上于a? 例 当调用模块的静态定义的属性中不存在的函数时,我希望在该模块中创建一个类的实例,并使用与该模块上的属性查找失败相同的名称调用该方法。 class A(object): def salutation(self, accusative): print "hello", accusative # note this function is intentionally on the module, and not the class above def __getattr__(mod, name): return getattr(A(), name) if __name__ == "__main__": # i hope here to have my __getattr__ function above invoked, since # salutation …

13
在Mac上安装python模块的最兼容方法是什么?
我开始学习python并热爱它。我主要在Mac和Linux上工作。我发现在Linux(主要是Ubuntu 9.04)上,使用apt-get安装python模块时,它工作正常。我可以轻松导入它。 在Mac上,我习惯于使用Macports安装所有Unixy东西。但是,我发现我安装的大多数python模块都没有被python看到。我花了一些时间玩弄PATH设置并使用python_select。什么都没有真正起作用,在这一点上我还不是很了解,相反,我只是闲逛。 我得到的印象是Macports在管理python模块方面并不广受喜爱。我想使用更“接受”(如果正确的话)的方法重新开始。 因此,我想知道Mac python开发人员使用什么方法来管理其模块? 奖励问题: 您使用Apple的python还是其他版本?您是从源代码编译所有内容,还是有运行良好的软件包管理器(Fink?)。

12
如何制作跨模块变量?
该__debug__变量很方便,部分原因是它会影响每个模块。如果我想创建另一个工作方式相同的变量,我该怎么做? 变量(让我们成为原始变量,并将其称为“ foo”)不必是真正的全局变量,在某种意义上,如果我在一个模块中更改foo,则在其他模块中对其进行更新。如果我可以在导入其他模块之前设置foo,然后它们会看到相同的值,那很好。
121 python  module  global 

7
在运行时检查Python模块版本
许多第三方Python模块都有一个属性,该属性保存该模块的版本信息(通常是module.VERSION或module.__version__),但是有些则没有。 此类模块的特定示例是libxslt和libxml2。 我需要检查这些模块在运行时是否使用了正确的版本。有没有办法做到这一点? 潜在的解决方案是在运行时读取源代码,对其进行哈希处理,然后将其与已知版本的哈希进行比较,但这很讨厌。 有更好的解决方案吗?
118 python  module  version 

9
如何在节点4中正确导出ES6类?
我在模块中定义了一个类: "use strict"; var AspectTypeModule = function() {}; module.exports = AspectTypeModule; var AspectType = class AspectType { // ... }; module.export.AspectType = AspectType; 但是我收到以下错误消息: TypeError: Cannot set property 'AspectType' of undefined at Object.<anonymous> (...\AspectType.js:30:26) at Module._compile (module.js:434:26) .... 我应该如何导出此类并在另一个模块中使用它?我看到了其他SO问题,但是当我尝试实现其解决方案时却收到其他错误消息。

9
ES6导出对象的所有值
假设我有一个模块(./my-module.js),其中包含一个对象,该对象应为其返回值: let values = { a: 1, b: 2, c: 3 } // "export values" results in SyntaxError: Unexpected token 所以我可以像这样导入它们: import {a} from './my-module' // a === 1 import * as myModule from './my-module' // myModule.a === 1 我发现的唯一方法是对出口进行硬编码: export let a = values.a export let b = values.b …

4
在Ruby中创建模块变量
有没有什么办法可以在Ruby中的模块中创建类似于类变量的变量?我的意思是无需初始化模块实例即可访问它,但是可以更改它(与模块中的常量不同)。

3
是否使用-m选项执行Python代码
python解释器的-m 模块选项为“将库模块模块作为脚本运行”。 使用此python代码a.py: if __name__ == "__main__": print __package__ print __name__ 我测试python -m a了 "" <-- Empty String __main__ 而python a.py回报 None <-- None __main__ 对我来说,这两个调用似乎是相同的,只是当使用-m选项调用__package__时不为None。 有趣的是,有了python -m runpy a,我得到了与python -m a编译成a.pyc的python模块相同的东西。 这些调用之间的(实际)区别是什么?他们之间有什么利弊吗? 同样,David Beazley的Python Essential Reference将其解释为“ -m选项将库模块作为脚本运行,该脚本在执行主脚本之前在__main__模块内部执行 ”。这是什么意思?
111 python  module  package 

5
如何将go.mod中的Go模块依赖项指向存储库中的最新提交?
从v1.11开始,Go添加了对模块的支持。指令 go mod init <package name> go build 会生成go.mod和go.sum文件,其中包含找到的所有软件包依赖版本。 如果模块没有任何发行版,则使用该模块的最新提交。如果某个模块确实具有发行版,则将最新的一个作为依赖项。 但是有时我需要的功能不是发布的版本,而是该版本之后的提交。如何设置go.mod为不指向模块的发行版,而是指向模块存储库中的特定提交? 看起来我可以用go.mod手动完成 module /my/module require ( ... github.com/someone/some_module v0.0.0-20181121201909-af044c0995fe ... ) v0.0.0与上次发布的发布标记不符的地方20181121201909是提交时间戳,af044c0995fe是提交哈希?应该手动找到并输入此类信息,还是有更好的方法?
111 git  go  module 

4
C ++模块-为什么将它们从C ++ 0x中删除?他们会稍后回来吗?
我刚刚发现了有关C ++ 0x中模块的旧C ++ 0x草案。 这个想法是通过只编写.cpp文件来摆脱当前的.h / .cpp系统,然后在编译过程中生成模块文件,然后再由其他.cpp文件使用。 这看起来像一个很棒的功能。 但是我的问题是:为什么他们从C ++ 0x中删除了它?是因为技术难题太多吗?时间不够?而且您认为他们会考虑针对C ++的新版本进行开发吗?

13
Android Studio运行/调试配置错误:未指定模块
我在运行配置中收到“未指定模块”错误。下拉菜单中没有显示模块,但是我看不到模块的任何问题。当我重构模块名称,将settings.gradle更改为新名称时,就会出现问题。 现在,当我进入项目结构并选择我的模块时,屏幕上没有任何显示,甚至没有错误。 我不确定100%,但是模块旁边的图标看起来像是带杯子的文件夹,而不是带电话的文件夹。 我的确切步骤- 在Android视图中打开 重构目录名称 重构模块名称 更改settings.gradle内容:将名称更改为新名称


2
Rails模块中的mattr_accessor是什么?
我在Rails文档中找不到真正的东西,但似乎'mattr_accessor'是普通Ruby 类中'attr_accessor'(getter&setter)的模块推论。 例如。在课堂上 class User attr_accessor :name def set_fullname @name = "#{self.first_name} #{self.last_name}" end end 例如。在一个模块中 module Authentication mattr_accessor :current_user def login @current_user = session[:user_id] || nil end end 此辅助方法由ActiveSupport提供。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.