小编Dav*_*ust的帖子

Python和字典就像对象

我需要一个用于字典的python 3.1深度更新函数(一个递归更新父字典内的子字典的函数).

但我认为,在将来,我的函数可能必须处理行为像字典但不是字典的对象.而且我想避免使用isinstance和type(因为它们被认为是坏的,因为我几乎可以阅读每个Pythonista的博客).

但鸭子打字是Python的哲学的一部分,所以我怎么能检查对象是否像字典一样?

谢谢!

编辑:谢谢大家的答案.以防万一,我编码的函数可以在这个地方找到:http://blog.cafeaumiel.com/public/python/dict_deep_update.py

python dictionary duck-typing

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

如何获得数据框中每个组的 10 个最高值?

我假设这是一件容易的事情,但我无法解决我的问题。

我有一个包含 9 列的数据框,我想为第一列中给出的每个组排序第 4 列 (LumenLenght) 的最高 3 个值。

我希望能够:a)找到为每个 SampleID(第一列)分隔的第 4 列具有最高值的 10 行 b)平均每个 SampleID 的 10 个值

数据框

我当前的代码 a) 首先根据 SampleID 和 LumenLength 对值进行排序,b) 将每个 SampleID 的最高、第二高和第三高的 LumenLength 值分开。

sorted.v= arrange(sorted.v, desc(SampleId), LumenLength)
maxlength1 = aggregate(sorted.v$LumenLength,by = list(sorted.v$SampleId),  FUN = tail, n = 1)#highest value
maxlength2 = aggregate(sorted.v$LumenLength,by = list(sorted.v$SampleId),  FUN = tail, n = 2)#second highest value
maxlength3 = aggregate(sorted.v$LumenLength,by = list(sorted.v$SampleId),  FUN = tail, n = 3)#3. highest value
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,我还没有真正达到我的目标。我也很确定有更好的方法来做到这一点,但我现在卡住了。

sorting aggregate r

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

带护照和快递的基本身份验证

我一定漏掉了一些东西,但是根据我找到的所有教程,这就是使用expressand passport+对节点应用程序进行基本身份验证的方式passport-local。我知道这不符合最佳实践,我只是想让 POC 运行:

'use strict'

var express = require('express');
var passport = require('passport');
var LocalStrategy = require('passport-local').Strategy

var app = express();

var users = { 'user': 'secretpass'};

passport.use(new LocalStrategy(
    function(username, password, done) {
        console.log('Username:', username, 'password:', password);
        if (!users[username] || users[username] != password) {
            console.log('Username:', username, 'password:', password);
            return done (null, false);
        }
        return done(null, {username: username});
    }
    ));

app.use(passport.initialize());


app.get('/', function (req, res) {
    res.send ('GET request to root');
});

app.post('/', function (req, …
Run Code Online (Sandbox Code Playgroud)

javascript node.js express passport.js

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