小编Ben*_*der的帖子

运行nose --with-coverage来获取所有包文件,但不包含其他依赖项和库

我的项目文件夹(是的 - 我知道这是最好的做法)是这样的:

.
??? app.py
??? otherscript.py
??? tests/
??? tools/
    ??? __init__.py
    ??? toolfile.py
Run Code Online (Sandbox Code Playgroud)

我需要nose --with-coverage测试.py主文件夹,tools文件夹中的脚本并排除tests文件夹(虽然我真的不在乎排除它)

当我运行基本

nose --with-coverage
Run Code Online (Sandbox Code Playgroud)

我得到了所有安装的依赖项和库(烧瓶,请求等)的报道

我跑的时候

nose --with-coverage --cover-package=folder name (or . or ./)
Run Code Online (Sandbox Code Playgroud)

我得到了测试文件夹的覆盖范围.该tools/__init__.py文件,app.py但不包括其余脚本:

> (opentaba-server) D:\username\pathto\opentaba-server>nosetests --with-coverage -- cover-package=./ ... Name                                      

> Stmts   Miss  Cover   Missing
> ----------------------------------------------------------------------- Tests\functional_tests\test_return_json      26      0   100%
> Tests\unit_test\test_createdb                 0      0   100%
> Tests\unit_test\test_scrape                   0      0   100% app     
> 63     15    76%   22, 24, …
Run Code Online (Sandbox Code Playgroud)

python nose nosetests

27
推荐指数
3
解决办法
2万
查看次数

"在bower install requirejs-text"中"EMALFORMED无法读取bower.json"

当我尝试安装时requirejs-text,我收到一个我不明白的错误.

$ bower install requirejs-text
bower                       EMALFORMED Failed to read /Users/bgolder/projects/explorer/front/bower.json

Additional error details:
Unexpected string
Run Code Online (Sandbox Code Playgroud)

在bower.json中,我看不出有什么不对.

{
  "name": "front",
  "version": "0.0.0",
  "dependencies": {
    "bootstrap": "~3.1.1"
    "jquery": "~1.10.2",
    "requirejs": "~2.1.9",
    "requirejs-text": "~2.0.10",
    "underscore": "~1.5.2",
    "backbone": "~1.1.0",
    "modernizr": "~2.6.2"
  },
  "devDependencies": {},
}
Run Code Online (Sandbox Code Playgroud)

如果我在bower上使用verbose选项,我会得到这个跟踪.

bower                       EMALFORMED Failed to read /Users/bgolder/projects/explorer/front/bower.json

Additional error details:
Unexpected string

Stack trace:
SyntaxError: Unexpected string
    at Object.parse (native)
    at /usr/local/lib/node_modules/bower/node_modules/bower-json/lib/json.js:41:29
    at fs.js:266:14
    at /usr/local/lib/node_modules/bower/node_modules/graceful-fs/graceful-fs.js:104:5
    at Object.oncomplete (fs.js:107:15)
From previous event:
    at readJson (/usr/local/lib/node_modules/bower/lib/util/readJson.js:17:6)
    at …
Run Code Online (Sandbox Code Playgroud)

javascript requirejs bower

22
推荐指数
2
解决办法
3万
查看次数

将列表从IronPython传递到C#

我想将IronPython 2.6 for .NET 2.0中的字符串列表传递给C#程序(我使用的是.NET 2.0,因为我正在使用基于2.0构建的DLL运行的api).但是我不确定如何从ScriptEngine返回时抛出它.

namespace test1
{
    class Program
    {
        static void Main(string[] args)
        {
            ScriptEngine engine = Python.CreateEngine();
            ScriptSource source = engine.CreateScriptSourceFromFile("C:\\File\\Path\\To\\my\\script.py");
            ScriptScope scope = engine.CreateScope();

            ObjectOperations op = engine.Operations;

            source.Execute(scope); // class object created
            object classObject = scope.GetVariable("MyClass"); // get the class object
            object instance = op.Invoke(classObject); // create the instance
            object method = op.GetMember(instance, "myMethod"); // get a method
            List<string> result = (List<string>)op.Invoke(method); // call the method and get result
            Console.WriteLine(result.ToString());
            Console.Read();
        }
    }
} …
Run Code Online (Sandbox Code Playgroud)

c# ironpython

15
推荐指数
1
解决办法
1万
查看次数

在python中定义url以整数结尾的路由

这是我的python代码的一部分:

@app.route("/<int:param>/")
def go_to(param):
    return param
Run Code Online (Sandbox Code Playgroud)

上面的函数路由一个url,例如www.example.com/12这个函数.

如何声明参数规则以将以整数结尾的URL重定向www.example.com/and/boy/12到此函数?

我正在使用Flask框架.

python routes flask

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

python NameError:name'<anything>'未定义(但它是!)

注意:解决了.事实证明我正在导入同一模块的先前版本.

在StackOverflow上很容易找到类似的主题,其中有人遇到了NameError.但大多数问题涉及特定模块,解决方案通常是更新模块.

在我的情况下,我试图从我自己编写的模块中导入一个函数.该模块名为InfraPy,它肯定在sys.path上.InfraPy中的一个特定函数(称为listToText)返回一个NameError,但仅当我尝试将其导入另一个脚本时.在InfraPy中,if __name__=='__main__':listToText函数工作得很好.从InfraPy我可以毫无问题地导入其他功能.from InfraPy import *在我尝试使用listToText函数之前,包括在我的脚本中不会返回任何错误.

怎么会发生这种情况?
如何导入一个特定函数返回一个NameError,而导入同一个模块中的所有其他函数工作正常?

在MacOSX 10.6上使用python 2.6,在Windows 7上运行脚本也遇到了同样的错误,使用IronPython 2.6 for .NET 4.0

谢谢.

如果您认为有其他细节可以帮助解决这个问题,我很乐意提供它们.

根据要求,这里是InfraPy内部的功能定义:

def listToText(inputList, folder=None, outputName='list.txt'):
    '''
    Creates a text file from a list (with each list item on a separate line). May be placed in any given folder, but will otherwise be created in the working directory of the python interpreter.
    '''
    fname = outputName
    if folder != None:
        fname = folder+'/'+fname
    f = open(fname, 'w')
    for …
Run Code Online (Sandbox Code Playgroud)

python nameerror

6
推荐指数
1
解决办法
6万
查看次数

d3,svg中的html,动画不透明度会使div失去位置,为什么?

一些背景:

我已经制作了一个力布局,并且我已将div添加到我的svg g节点,这样我就可以显示很好的文本段落.我正在尝试创建淡出插入的div的转换.

问题:

每当我在div的不透明度样式属性上启动转换时,它就会弹出定位流程.我已经在链接小提琴中孤立了这个问题.它与力布局无关,但我使用外来元素,以便我可以将html放在基于svg的力布局中.

这是一个例子,小提琴:

var foreign = d3.select("body")
    .append("svg")
    .attr("height", 200)
    .attr("width", 300)
    .append("svg:g")
    .attr("transform", 
          "translate(40, 20)")
    .append("svg:foreignObject")
    .attr("width", "100px")
    .attr("height", "50px");

var outer = foreign.append("xhtml:div")
    .attr("class", "outer");

var inner = outer.append("xhtml:div")
    .attr("class", "inner")
    .text("inner div");

outer.transition()
    .duration(3000)
    .style("opacity", 0.0);
Run Code Online (Sandbox Code Playgroud)

还有一个视觉截图,来自小提琴(请注意它是如何复制div的)

转型前的州:

在此输入图像描述

转型期间的状态:

在此输入图像描述

我在OS X 10.6.8上使用Chrome 28来查看它.它在Safari上变得更加有趣,元素闪烁进出可见性.

html svg position d3.js

5
推荐指数
1
解决办法
1356
查看次数

python:为交叉点排序两个多边形列表

我有两个大的多边形列表.

使用Python,我想在列表1每个多边形,并发现其与清单2中的多边形几何交集的结果(我用匀称做到这一点).

因此,对于列表1中的多边形i,列表2中可能有多个与其相交的多边形.

问题是两个列表都很大,如果我只是嵌套两个循环并为每个可能的多边形对运行交叉命令,那么它需要很长时间.我不确定在布尔测试的交点之前是否会显着加快这一点(例如,如果相交:返回交叉点).

对于我来说,排序或组织这两个多边形列表以便使交叉点更有效的方法是什么?是否有适合这种情况的排序算法,我可以使用python进行排序?

我对编程比较陌生,没有离散数学的背景,所以如果你知道我应该使用的现有算法(我假设存在这种情况),请链接或给出一些可以帮助我的解释实际上在python中实现它.

此外,如果有一个更好的StackExchange网站来解决这个问题,请告诉我.我觉得它有点桥接一般的python编程,gis和几何,所以我不太确定.

python sorting gis geometry

4
推荐指数
1
解决办法
1547
查看次数

关于初学者OSX上的python包管理的常识建议

如果我在OSX(Snow Leopard)上学习python开发,我应该如何最好地管理我的python包?

我对那里有大量优秀的python包感到非常兴奋.我很想开始学习它们,但包管理让我完全糊涂了.显然我不知道我在做什么.我在Stack Overflow上看到很多关于包管理的问题,人们经常通过说"为什么不用x?看看我从shell中复制的这一行有多容易"来回答它们.

$ x install something
Run Code Online (Sandbox Code Playgroud)

x无法处理某些特定依赖项或无法处理包y之前,这是一个很好的答案.这是我已经尝试过的:

  1. 我刚开始用easy_install安装东西.
  2. 我很快发现一些重要的软件包缺少依赖项(PIL),所以我一直在寻找MacPorts.
  3. 我开始使用的MacPorts和我所有的环境变量得到了真正令人迷惑,所以我学会了足够的bash重新配置PATH,PYTHONPATH以及sys.path把事情的工作(并让我的终端窗口看起来甜).MacPorts似乎很有用.
  4. 但后来我对我使用的不同模块版本感到困惑,我发现了更多的依赖问题(GDAL)......
  5. 然后几个非常聪明的人强烈建议我切换到Homebrew.所以我卸载了MacPorts并安装了Homebrew.
  6. 现在我有了Homebrew,我似乎无法安装任何东西,因为我不知道如何为我想要使​​用的大多数python包创建Formula.如果在pypi上列出了一个包,我不知道我是否应该使用Homebrew,或者只是弄清楚如何配置easy_install来安装到Homebrew目录.我仍然不知道如何最好地处理缺少的依赖项.也许有一些与python相关的公式的秘密存储库?或者将端口文件转换为公式的简单方法?

我知道正确的答案可能取决于我正在尝试安装的内容.我正在尝试安装让我这样的软件包:

  1. 使用python进行游戏并自动化所有内容
    • appscript
    • PIL
    • pygame的
  2. 在python中做与GIS相关的工作
    • @中
    • 身材匀称
    • PostGIS的
    • SciPy的
  3. 探索网络应用程序的奇妙可能性
    • Django的
    • 谷歌应用程序内引擎

我完全愿意擦掉我的机器上的所有东西,现在它必须有点杂乱的包裹.如果我应该学习virtualenv,或者只是学习更多关于检查依赖关系和自己安装它们的基本过程,我很乐意这样做.如果我应该深入了解Homebrew,我也很乐意这样做.我应该如何处理这些问题,这些问题常常使我无法做我真正想做的事情(使用python制作简洁的东西)?

python installation homebrew packages macports

3
推荐指数
1
解决办法
1107
查看次数