标签: module

什么放在python模块docstring?

好的,所以我已经阅读了PEP 8PEP 257,并且我已经为函数和类编写了很多文档字符串,但是我对模块文档字符串中的内容有点不确定.我想,至少它应该记录模块导出的函数和类,但我也看到了一些列出作者姓名,版权信息等的模块.有没有人有一个好的python文档字符串如何应该的例子结构化?

python documentation module

154
推荐指数
2
解决办法
11万
查看次数

为什么Python在导入时会运行我的模块,如何阻止它?

我有一个我正在构建的Python程序,它可以用以下两种方式之一运行:第一种是调用"python main.py",它以友好的方式提示用户输入,然后通过程序运行用户输入.另一种方法是调用"python batch.py -file- ",它将通过所有友好的输入收集并通过程序一次性运行整个文件的输入值.

问题是,当我运行"batch.py​​"时,它会从"main.py"导入一些变量/方法/ etc,并在运行此代码时:

import main
Run Code Online (Sandbox Code Playgroud)

在程序的第一行,它立即出错,因为它试图在"main.py"中运行代码.

如何阻止Python运行我正在导入的"main"模块中包含的代码?

python module python-import

150
推荐指数
5
解决办法
13万
查看次数

如何处理Node.js中的循环依赖

我最近一直在使用nodejs并且仍然掌握模块系统,所以如果这是一个显而易见的问题,请道歉.我想要的代码大致如下所示:

a.js(主节点与节点一起运行)

var ClassB = require("./b");

var ClassA = function() {
    this.thing = new ClassB();
    this.property = 5;
}

var a = new ClassA();

module.exports = a;
Run Code Online (Sandbox Code Playgroud)

b.js

var a = require("./a");

var ClassB = function() {
}

ClassB.prototype.doSomethingLater() {
    util.log(a.property);
}

module.exports = ClassB;
Run Code Online (Sandbox Code Playgroud)

我的问题似乎是我无法从ClassB的实例中访问ClassA的实例.

是否有正确/更好的方法来构建模块以实现我想要的?有没有更好的方法在模块之间共享变量?

module require cyclic-reference node.js cyclic-dependency

148
推荐指数
12
解决办法
7万
查看次数

将Underscore模块与Node.js一起使用

我一直在学习node.js和模块,并且似乎无法使Underscore库正常工作......似乎我第一次使用Underscore中的函数时,它会覆盖_对象的结果我的函数调用.有谁知道发生了什么?例如,这是来自node.js REPL的会话:

Admin-MacBook-Pro:test admin$ node
> require("./underscore-min")
{ [Function]
  _: [Circular],
  VERSION: '1.1.4',
  forEach: [Function],
  each: [Function],
  map: [Function],
  inject: [Function],
  (...more functions...)
  templateSettings: { evaluate: /<%([\s\S]+?)%>/g, interpolate: /<%=([\s\S]+?)%>/g },
  template: [Function] }
> _.max([1,2,3])
3
> _.max([4,5,6])
TypeError: Object 3 has no method 'max'
    at [object Context]:1:3
    at Interface.<anonymous> (repl.js:171:22)
    at Interface.emit (events.js:64:17)
    at Interface._onLine (readline.js:153:10)
    at Interface._line (readline.js:408:8)
    at Interface._ttyWrite (readline.js:585:14)
    at ReadStream.<anonymous> (readline.js:73:12)
    at ReadStream.emit (events.js:81:20)
    at ReadStream._emitKey (tty_posix.js:307:10)
    at ReadStream.onData (tty_posix.js:70:12)
> _
3
Run Code Online (Sandbox Code Playgroud)

当我自己制作Javascript文件并导入它们时,它们似乎正常工作.也许Underscore图书馆有一些特别的东西?

module node.js underscore.js

146
推荐指数
4
解决办法
11万
查看次数

Angular组件和模块之间有什么区别

我一直在看视频和阅读文章,但这篇特别的文章让我如此困惑,在文章的开头说

Angular中的应用程序遵循模块化结构.Angular应用程序将包含许多模块,每个模块专用于单一用途.通常,模块是一个有凝聚力的代码组,它与其他模块集成以运行Angular应用程序.

模块从其代码中导出一些类,函数和值.Component是Angular的基本块,多个组件将构成您的应用程序.

模块可以是另一个模块的库.例如,作为主要Angular库模块的angular2/core库将由另一个组件导入.

他们是可以交换的条款吗?组件是模块吗?但不是反之?

components module angular

146
推荐指数
7
解决办法
8万
查看次数

Python有包/模块管理系统吗?

Python有一个包/模块管理系统,类似于Ruby有rubygems的地方gem install packagename吗?

安装Python模块时,我只看到对它的引用python setup.py install,但这需要您首先找到该包.

python module

144
推荐指数
9
解决办法
11万
查看次数

JavaScript模块模式与示例

我找不到任何可访问的示例,显示两个(或更多)不同模块如何连接在一起工作.

所以,我想问一下是否有人有时间编写一个解释模块如何协同工作的例子.

javascript module

136
推荐指数
4
解决办法
10万
查看次数

将选项传递给ES6模块导入

是否可以将选项传递给ES6导入?

你怎么翻译这个:

var x = require('module')(someoptions);
Run Code Online (Sandbox Code Playgroud)

到ES6?

javascript module ecmascript-6 es6-modules

132
推荐指数
4
解决办法
4万
查看次数

如何在当前模块上调用setattr()?

我作为第一个参数" object"传递给函数setattr(object, name, value),在当前模块上设置变量?

例如:

setattr(object, "SOME_CONSTANT", 42);
Run Code Online (Sandbox Code Playgroud)

产生同样的效果:

SOME_CONSTANT = 42
Run Code Online (Sandbox Code Playgroud)

在包含这些行的模块中(正确object).

我在模块级别动态生成多个值,而我无法__getattr__在模块级别定义,这是我的后备.

python module global-variables setattr getattr

128
推荐指数
3
解决办法
4万
查看次数

PyCharm错误:尝试导入自己的模块时没有模块(python脚本)

我写了一个模块(文件my_mod.py夹中的文件文件my_module).目前,我正在cool_script.py使用驻留在该文件夹中的文件cur_proj.我已经使用File - open打开了PyCharm中的文件夹(我假设,因此,它是一个PyCharm项目).

在ProjectView(CMD-7)中,我可以看到我的项目cur_proj(红色)和"外部库"下的内容my_module.在cool_script.py中,我可以写

from my_module import my_mod as mm
Run Code Online (Sandbox Code Playgroud)

而PyCharm甚至为my_mod提出建议.到现在为止还挺好.

但是,当我尝试运行cool_script.py时,PyCharm告诉我 "没有名为my_module的模块"

这对我来说很奇怪,因为

A)在终端(OS 10.10.2)中,在python中,我可以导入模块没问题 - .bashrc中的PYTHONPATH中有相应的条目

B)在PyCharm中 - 设置 - 项目cur_proj - 项目解释器 - 在python解释器旁边的CogWheel - 更多 - 显示所选解释器图标的路径,PYTHONPATH的路径确实出现(我认为应该这样)

因此,当我尝试运行cool_script.py时,为什么会出现错误?- 我错过了什么?

笔记:

附录2015年2月25日

当我进入PyCharm运行 - 编辑配置时,对于我当前的项目,有两个选项带有复选标记:" 将内容根添加到PYTHONPATH "和" 将源根添加到PYTHONPATH ".当我同时取消选中时,我可以加载我的模块.

所以它现在有效 - 但为什么呢?

出现了更多问题:

  • 什么是"内容根源"和什么是"源根"?为什么在PYTHONPATH中添加一些东西会让它以某种方式破坏?
  • 我是否应该一直取消选中这两个选项(默认情况下,不仅是项目特定的配置(运行/调试配置对话框的左侧面板)?

python module pycharm

127
推荐指数
7
解决办法
14万
查看次数