小编YXD*_*YXD的帖子

Javascript减少了对象数组

说我想要a.x为每个元素求和arr.

arr = [{x:1},{x:2},{x:4}]
arr.reduce(function(a,b){return a.x + b.x})
>> NaN
Run Code Online (Sandbox Code Playgroud)

我有理由相信ax在某些时候是不确定的.

以下工作正常

arr = [1,2,4]
arr.reduce(function(a,b){return a + b})
>> 7
Run Code Online (Sandbox Code Playgroud)

我在第一个例子中做错了什么?

javascript reduce functional-programming node.js

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

Pymongo/MongoDB:创建索引还是确保索引?

我不明白create_indexensure_indexpymongo 之间的区别.在MongoDB索引页面上,它说

你可以通过调用来创建一个索引 ensureIndex()

然而,在pymongo有两个不同的命令create_indexensure_index,并为创建索引有文档:

与尝试无条件地创建索引的create_index()不同,ensure_index()利用驱动程序中的某些缓存,以便它只尝试创建可能尚不存在的索引.当PyMongo创建(或确保)索引时,它会被"记住"ttl秒.在该时间限制内重复调用ensure_index()将是轻量级的 - 它们不会尝试实际创建索引.

我是否正确理解ensure_index将创建一个永久索引,或者我是否需要使用create_index它?

python mongodb pymongo

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

MongoDB仅在Ubuntu上以root身份运行时才起作用 - 数据目录问题

我使用官方软件包(mongodb-stable)安装了MongoDB ,并按照快速入门指南进行了操作,其中包括:

默认情况下,MongoDB会将数据存储在其中 /data/db,但不会自动创建该目录.要创建它,请执行:

$ sudo mkdir -p /data/db/
$ sudo chown `id -u` /data/db
Run Code Online (Sandbox Code Playgroud)

您还可以使用该--dbpath选项告诉MongoDB使用不同的数据目录 .

MongoDB只会在我运行时启动sudo mongod- 如果我尝试运行只是mongod我得到错误:

Mon Mar 14 15:27:07 [initandlisten] couldn't open /data/db/test.ns errno:13 Permission denied
Mon Mar 14 15:27:07 [initandlisten]   couldn't open file /data/db/test.ns terminating
Mon Mar 14 15:27:07 dbexit:
Run Code Online (Sandbox Code Playgroud)

是什么赋予了?

permissions ubuntu mongodb chown

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

在grep/ack中转义括号

我想查找字符串"methodname(",但我无法逃避"(".我怎么能得到

grep methodname( *
Run Code Online (Sandbox Code Playgroud)

要么

ack-grep methodname( *
Run Code Online (Sandbox Code Playgroud)

上班?

regex grep ack

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

处理NumPy分配中的重复索引

我在2D数组中设置多个元素的值,但是我的数据有时包含给定索引的多个值.

似乎总是分配"后来的"值(参见下面的示例),但这种行为是否得到保证,或者我有可能得到不一致的结果?我怎么知道我可以在矢量化作业中以"我想要的方式"解释"以后"?

即在我的第一个例子a肯定会包含4,在第二个例子中它会打印values[0]吗?

很简单的例子:

import numpy as np
indices = np.zeros(5,dtype=np.int)
a[indices] = np.arange(5)
a # array([4])
Run Code Online (Sandbox Code Playgroud)

另一个例子

import numpy as np

grid = np.zeros((1000, 800))

# generate indices and values
xs = np.random.randint(0, grid.shape[0], 100)
ys = np.random.randint(0, grid.shape[1], 100)
values = np.random.rand(100)

# make sure we have a duplicate index
print values[0], values[5]
xs[0] = xs[5]
ys[0] = ys[5]

grid[xs, ys] = values

print "output value is", grid[xs[0], ys[0]]
# always prints …
Run Code Online (Sandbox Code Playgroud)

python numpy

25
推荐指数
4
解决办法
2514
查看次数

Python ElementTree:解析字符串并获取ElementTree实例

我有一个包含从http请求返回的XML数据的字符串.

我正在使用ElementTree来解析数据,然后我想以递归方式搜索一个元素.

根据这个问题,我只能递归搜索result.findall()if result是类型ElementTree而不是类型Element.

现在xml.etree.ElementTree.fromstring(),用于解析字符串,返回一个Element对象,而xml.etree.ElementTree.parse()用于解析文件,返回一个ElementTree对象.

我的问题是:我如何解析字符串并获取ElementTree实例?(没有像写临时文件那样疯狂)

python xml elementtree

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

是否可以使用bpython作为完整的调试器?

我想使用bpython解释器进行调试.我的问题类似于" 是否有可能从代码进入ipython? ",它询问ipython.

如果您使用,ipdb.set_trace()您将获得一个完整的ipython会话及其所有便利.但是,bpdb.set_trace()不给我一个bpython会话,它给了我标准的pdb调试器.

是否有任何设置方法,以便我可以在bpython会话中调试?

python debugging bpython

18
推荐指数
2
解决办法
2768
查看次数

将背景图像添加到具有已知角坐标的绘图

假设我正在绘制一组以图像为背景的点.我在示例中使用了Lena图像:

import numpy as np
import matplotlib.pyplot as plt
from scipy.misc import imread

np.random.seed(0)
x = np.random.uniform(0.0,10.0,15)
y = np.random.uniform(0.0,10.0,15)
img = imread("lena.jpg")
plt.scatter(x,y,zorder=1)
plt.imshow(img,zorder=0)
plt.show()
Run Code Online (Sandbox Code Playgroud)

这给了我在此输入图像描述 .

我的问题是:如何在图中指定图像的角坐标?让我们说我想要左下角x, y = 0.5, 1.0和右上角x, y = 8.0, 7.0.

python numpy matplotlib

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

关于Node.js中CPU密集型代码的困惑

关于"除了代码之外的所有内容并行运行"的问题,来自Node.js的新人.这是一个明显人为的例子,但是我想说我想创建一个包含函数的数学库,factorize()其行为如下:

var http = require('http');
http.createServer(function (req, res) {
  myMath.factorize(some_big_number,function(factors) {
    res.writeHead(200, {'Content-Type': 'application/json'});
    res.end(JSON.stringify(factors));
  }
}).listen(8000);
Run Code Online (Sandbox Code Playgroud)

如何编写它以便"并行运行"?

我一直在查看这个库中的解析代码作为一个可能需要一些处理时间的例子.代码的主体被认为是"你的代码",还是"并行运行"?

如果不是:在编写时我需要做什么,factorize()以便它也是非阻塞/表现得像客户端?使用EventEmitter是否足够?

如果是这样的话:我仍然最好选择使用此问题中建议的子进程吗?

如果不清楚,请提前道歉.

javascript events serverside-javascript node.js

14
推荐指数
1
解决办法
2028
查看次数

有没有一种很好的方法可以在Vim中的括号内复制文本?

我想复制foo(bar).baz以下代码中的参数:

function(foo(bar).baz)
Run Code Online (Sandbox Code Playgroud)

第一次尝试:其中一个括号上的光标y%.这给了我参数加上一点额外的:

(foo(bar).baz)
Run Code Online (Sandbox Code Playgroud)

第二次尝试:开始括号上的光标.设置标记ma,跳转到结束 %然后y`a复制回标记.这给了我:

(foo(bar).baz
Run Code Online (Sandbox Code Playgroud)

在最后设置标记并以另一种方式设置标记给我完全相同.在上面设置标记f,然后键入mah%y`a 确实给了foo(bar).baz我想要的,但也许有更简洁的东西.在那儿?

unix linux vi vim

14
推荐指数
2
解决办法
3027
查看次数