小编L-R*_*L-R的帖子

GIT:推送到远程服务器时出现"git-upload-pack:command not found"

所以我正在使用GIT,试图将代码推送到我的远程服务器.

  • 在共享的unix主机上,我不允许拥有自己的环境变量(阻止SSH帐户)并且没有sudo访问权限.
  • 设法在我的/ home /中成功安装git
  • 尝试将代码推送到服务器返回:bash:git-upload-pack:找不到命令
  • $ PATH变量已设置 - 因为git安装在我的/ home /
  • 为了让事情有效,我不得不使用以下克隆命令:

    git clone -u/home/bin/git-upload-pack user@server.com:mygitfolder

  • 本地机器/远程服务器上相同版本的git(1.7.0.4)

所以从我可以收集的内容来看,我基本上需要:

  • 找到一种方法来在每次推送到服务器时包装我的环境变量
  • 在推送到服务器时指定我的git-receive-pack的路径

我知道我可以创建一个在我推动时生效的钩子,但是没有设法找到它的实现位置和方式.

(我宁愿不在我的本地机器上创建别名)

unix git ssh version-control

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

使用gen.task和Tornado来实现简单的功能

只是尝试使用Tornado的异步函数 - 我想从我的处理程序调用一个方法,但它一直告诉我它"有一个意外的关键字参数'回调'".

class MyHandler(tornado.web.RequestHandler):

    @asynchronous
    @gen.engine
    def get(self):
        response = yield gen.Task(self.dosomething, 'argument')
        self.write(response)
        self.finish()

    def dosomething(self, myargument):
        pass
Run Code Online (Sandbox Code Playgroud)

python asynchronous tornado web

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

使用python在Elasticseach中批量部分Upsert

我想向ES发送n个upsert部分请求,这样的事情可能吗?因此,如果文档不存在,请插入我的部分文档.如果它已存在,请使用部分doc更新它.

使用批量助手,我尝试了很多变化,但它们都消除了现有的价值,转而支持新的价值.

data = [{
    "_index": 'my_index',
    "_type": 'my_type',
    "_id": 12345,
    "doc": {"newkey": 'newvalue'}
}]
helpers.bulk(es, data, index='my_index', doc_type='my_type')
Run Code Online (Sandbox Code Playgroud)

要么

data = [{
    "_index": 'my_index',
    "_type": 'my_type',
    "_id": 12345,
    "_source": {"newkey": 'newvalue'}
}]
helpers.bulk(es, data, index='my_index', doc_type='my_type')
Run Code Online (Sandbox Code Playgroud)

也不起作用.

python upsert elasticsearch

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

排序python中嵌套字典的列表

我有类似的东西

[
    {
        "key": { "subkey1":1, "subkey2":"a"  }
    },
    {
        "key": { "subkey1":10, "subkey2":"b" }
    },
    {
        "key": { "subkey1":5, "subkey2":"c" }
    }
]
Run Code Online (Sandbox Code Playgroud)

并且需要:

[
    {
        "key": { "subkey1":10, "subkey2":"b" }
    },
    {
        "key": { "subkey1":5, "subkey2":"c" }
    },
    {
        "key": { "subkey1":1, "subkey2":"a" }
    }
]
Run Code Online (Sandbox Code Playgroud)

非常感谢!

编辑:我想按subkey1排序,这在以前不清楚.

python sorting dictionary

9
推荐指数
1
解决办法
5021
查看次数

Scikit-learn - KNeighborsClassifier 的用户定义权重函数

我有一个 KNeighborsClassifier,它根据 4 个属性对数据进行分类。我想手动对这 4 个属性进行加权,但总是遇到“操作数无法与形状 (1,5) (4) 一起广播”的问题。

weights : [callable] : a user-defined function which accepts an array of distances, and returns an array of the same shape containing the weights.关于(来自这里)的文档很少

这就是我现在所拥有的:

    for v in result:
        params = [v['a_one'], v['a_two'], v['a_three'], v['a_four']]
        self.training_data['data'].append(params)
        self.training_data['target'].append(v['answer'])

    def get_weights(array_weights):
        return [1,1,2,1]

    classifier = neighbors.KNeighborsClassifier(weights=get_weights)
Run Code Online (Sandbox Code Playgroud)

machine-learning nearest-neighbor scikit-learn

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

d3.js 强制取消拖动事件

我有一个简单的拖动事件 - 如果满足某个条件,我想强制取消当前正在进行的拖动(基本上就像你在做鼠标一样)。

像这样:

var drag_behavior = d3.behavior.drag()
.on("drag", function() {
    if(mycondition){
       // cancel the drag event
    }
});
Run Code Online (Sandbox Code Playgroud)

编辑:

目标只是防止人们将世界地图拖到特定边界之外,以在海洋中渲染地图(详情如下)。

当前地图代码:

var width = window.innerWidth
var height = window.innerHeight

var projection = d3.geo.mercator()
    .scale((width + 1) / 2 / Math.PI)
    .translate([width / 2, height/1.5])
    .precision(.1);

var path = d3.geo.path()
    .projection(projection);

var drag_behavior_map = d3.behavior.drag()
.on("drag", function() {
    drag_click = true //used later to prevent dragend to fire off a click event
    d3.event.sourceEvent.stopPropagation();

    // original idea
    // if(worldmap_left_boundary > 0 …
Run Code Online (Sandbox Code Playgroud)

javascript jquery events d3.js

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

将当前对象传递给python apscheduler方法

我想在课堂上每隔X小时安排一份工作.但是我不确定如何将当前上下文传递给方法,因为它需要"自我".我知道如果做cron风格,我可以使用args参数列表,但这也没有用.救命?

class MyClass(object):
    @settings.scheduler.interval_schedule(hours=2)
    def post(self, first_argument=None):
        # do stuff
        self.cleanup()
Run Code Online (Sandbox Code Playgroud)

结果是

Traceback (most recent call last):
      File "/usr/local/lib/python2.7/dist-packages/apscheduler/scheduler.py", line 510, in _run_job
        retval = job.func(*job.args, **job.kwargs)
    TypeError: post() takes at least 1 argument (0 given)
Run Code Online (Sandbox Code Playgroud)

谢谢.

python oop arguments apscheduler

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

使用非散列键字段查询dynamoDB(使用boto/python)

我正在使用带有boto的dynamoDB,并且在我的表的设计/查询中遇到了一些问题.

我希望我的数据看起来像

+---------------------------------------+
hash_key    account_id    mykey
-----------------------------------------
1           12345         myvalue1
2           12345         myvalue2
3           12345         myvalue3
4           123456        myvalue4
+---------------------------------------+
Run Code Online (Sandbox Code Playgroud)

然后检索帐户12345的所有数据.查看boto文档,我总是需要hash_key可用.我知道如何查询这个标准的SQL/MongoDB,但我找不到boto的解决方案.我认为这是可能的吗?谢谢!

编辑:这似乎工作

+---------------------------------------+
hash_key    range_key    mykey
-----------------------------------------
12345       12568        myvalue1
12345       53890        myvalue2
12345       12322        myvalue3
123456      23432        myvalue4
+---------------------------------------+
Run Code Online (Sandbox Code Playgroud)

其次是

> res = table.query(hash_key='12345')
> for item in res:
>    print i
Run Code Online (Sandbox Code Playgroud)

由于我想要使用帐户#12345获取所有条目,无论range_key如何,我都需要查询而不是get_item

python boto amazon-web-services amazon-dynamodb

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

装饰器 args 和 kwargs 在元组中返回

我有以下装饰器和类。

def auth(fn):

    def check_headers(self):
        print 'checking headers...'
        #self.headers work done here

    def inner(self, *args, **kwargs):
        check_headers(self)
        fn(self, args, kwargs)

    return inner

class Worker(object):

    @auth
    def work(self, *args, **kwargs):
        print 'auth passed'
        print args
        print kwargs


worker_obj = Worker()
worker_obj.work('arg', kw='kwarg')
Run Code Online (Sandbox Code Playgroud)

哪个输出:

> checking headers...
> auth passed
> (('arg',), {'kw': 'kwarg'})
> {}
Run Code Online (Sandbox Code Playgroud)

但我期待这个吗:

> checking headers...
> auth passed
> ('arg',)
> {'kw': 'kwarg'}
Run Code Online (Sandbox Code Playgroud)

当原始方法 (work()) 运行时,装饰后,为什么 args/kwargs 被放入一个元组中?

我知道把它简化为

def auth(fn):
    return fn
Run Code Online (Sandbox Code Playgroud)

正确返回参数,但在返回之前我需要对工作实例(自身)做一些工作。我肯定错过了一些关于装饰器的事情。

谢谢!

python methods arguments decorator

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

SSL上的Nginx(443)

我的目标是从端口80重定向到443(强制https),但无法首先获得有效的https配置.我收到503服务器错误,日志中没有任何内容.我查看了SO和SF上的所有帖子,它们都没有用(X_FORWARDED_PROTO,X-Forwarded-For标题没有区别.).我在负载均衡器后面的EC2上,因此我不需要使用与SSL相关的指令,因为我已经在ELB上配置了我的证书.我正在使用Tornado作为Web服务器.

这是配置,如果有人有想法,谢谢!

http {
    # Tornado server
    upstream frontends {
        server 127.0.0.1:8002;
    }

server {
    listen 443;

    client_max_body_size 50M;

    root <redacted>/static;

    location ^~/static/ {
        root <redacted>/current;
        if ($query_string) {
            expires max;
        }
    }

    location / {
        proxy_pass_header Server;
        proxy_set_header Host $http_host;
        proxy_redirect off;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Scheme $scheme;
        proxy_pass http://frontends;
    }
}
}
Run Code Online (Sandbox Code Playgroud)

ssl https nginx

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

zip 2字典列表为1

我有这样的第一个清单

[{"name":"jon", "age":10}, {"name":"mary", "age":12}]
Run Code Online (Sandbox Code Playgroud)

第二个清单就像这样

[{"city":"nyc"}, {"city":"la"}]
Run Code Online (Sandbox Code Playgroud)

并希望将它们组合成一个单词列表.假设它们的长度也相同.

[{"name":"jon", "age":10, "city":"nyc"}, {"name":"mary", "age":12, "city":"la"}]
Run Code Online (Sandbox Code Playgroud)

谢谢!

python zip dictionary list

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

Tornado python - 如何使用pymongo将查询排序到mongoDB?

想要对一个简单的查询进行排序,但不确定它如何与"gen.task"一起使用,因为它将arg1和param的方法作为arg2.

这不仅仅是很好的:

response, error = yield gen.Task(db.client().collection.find, {"user_id":user_id})
if response:
    #blablabla
Run Code Online (Sandbox Code Playgroud)

但那我怎么给它sort()?

更新:现在抛出'回调必须可调用'错误.这似乎是Tornado现在的另一个问题.

def findsort(self, find, callback):
    return callback(db.client().collection.find(find).sort({"myfield":1}))

@gen.engine
def anotherfunction(self):
    response, error = yield gen.Task(self.findsort, {"user_id":user_id})
Run Code Online (Sandbox Code Playgroud)

python sorting tornado mongodb pymongo

0
推荐指数
1
解决办法
1321
查看次数