说我想要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)
我在第一个例子中做错了什么?
我不明白create_index
和ensure_index
pymongo 之间的区别.在MongoDB索引页面上,它说
你可以通过调用来创建一个索引
ensureIndex()
然而,在pymongo有两个不同的命令create_index
和ensure_index
,并为创建索引有文档:
与尝试无条件地创建索引的create_index()不同,ensure_index()利用驱动程序中的某些缓存,以便它只尝试创建可能尚不存在的索引.当PyMongo创建(或确保)索引时,它会被"记住"ttl秒.在该时间限制内重复调用ensure_index()将是轻量级的 - 它们不会尝试实际创建索引.
我是否正确理解ensure_index
将创建一个永久索引,或者我是否需要使用create_index
它?
我使用官方软件包(mongodb-stable)安装了MongoDB ,并按照快速入门指南进行了操作,其中包括:
默认情况下,MongoDB会将数据存储在其中
/data/db
,但不会自动创建该目录.要创建它,请执行:Run Code Online (Sandbox Code Playgroud)$ sudo mkdir -p /data/db/ $ sudo chown `id -u` /data/db
您还可以使用该
--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)
是什么赋予了?
我想查找字符串"methodname(",但我无法逃避"(".我怎么能得到
grep methodname( *
Run Code Online (Sandbox Code Playgroud)
要么
ack-grep methodname( *
Run Code Online (Sandbox Code Playgroud)
上班?
我在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) 我有一个包含从http请求返回的XML数据的字符串.
我正在使用ElementTree来解析数据,然后我想以递归方式搜索一个元素.
根据这个问题,我只能递归搜索result.findall()
if result
是类型ElementTree
而不是类型Element
.
现在xml.etree.ElementTree.fromstring()
,用于解析字符串,返回一个Element
对象,而xml.etree.ElementTree.parse()
用于解析文件,返回一个ElementTree
对象.
我的问题是:我如何解析字符串并获取ElementTree
实例?(没有像写临时文件那样疯狂)
我想使用bpython解释器进行调试.我的问题类似于" 是否有可能从代码进入ipython? ",它询问ipython.
如果您使用,ipdb.set_trace()
您将获得一个完整的ipython会话及其所有便利.但是,bpdb.set_trace()
不给我一个bpython会话,它给了我标准的pdb
调试器.
是否有任何设置方法,以便我可以在bpython会话中调试?
假设我正在绘制一组以图像为背景的点.我在示例中使用了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
.
关于"除了代码之外的所有内容并行运行"的问题,来自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是否足够?
如果不清楚,请提前道歉.
我想复制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
我想要的,但也许有更简洁的东西.在那儿?