小编Vej*_*jto的帖子

numpy中的三维数组

Python和Numpy的新手,尝试创建三维数组.我的问题是,与Matlab相比,维度的顺序是关闭的.事实上,订单根本没有意义.

创建矩阵:

x = np.zeros((2,3,4))
Run Code Online (Sandbox Code Playgroud)

在我的世界中,这应该产生2行,3列和4个深度维度,它应该表示为:

[0 0 0      [0 0 0      [0 0 0      [0 0 0
 0 0 0]      0 0 0]      0 0 0]      0 0 0] 
Run Code Online (Sandbox Code Playgroud)

分离每个深度尺寸.相反,它被呈现为

[0 0 0 0      [0 0 0 0
 0 0 0 0       0 0 0 0
 0 0 0 0]      0 0 0 0]
Run Code Online (Sandbox Code Playgroud)

即,3行,4列和2个深度尺寸.也就是说,第一个维度是"深度".为了进一步添加这个问题,使用OpenCV导入图像颜色维度是最后一个维度,也就是说,我将颜色信息视为深度维度.如果我想做的就是在已知的较小的三维阵列上尝试某些东西,这会使事情变得非常复杂.

我误解了什么吗?如果没有,为什么使用这种不直观的3D维阵列工作方式会让人感到沮丧?

python numpy

45
推荐指数
5
解决办法
11万
查看次数

使用php在__construct中调用函数

一个简单的PHP问题我找不到答案.

是否可以从"__construct()"调用函数?

例如,如果我在这里使用My_Controller解决方案.如果我在下面添加我自己的函数,就像我有一个更高级的auth,我可以从构造中调用它吗?

php construct

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

Mysql搜索,按优先顺序排序

我决定在我的网站上想要一个搜索字段,事情是我对搜索算法没有任何了解.搜索框的工作方式类似于您可以输入任意数量的名称(用户名,名字,姓氏)或用空格分隔的电子邮件.所以我想出了以下使用codeigniter的活动记录类(它非常简单):

    $emails = FALSE;
    $names = FALSE;

    foreach($search_array as $value){
        if(valid_email($value)){
            $emails[] = $value;
        } else{
            $names[] = $value;
        }
    }

    if($emails){
        $this->db->where_in('email', $emails);
        if($names){
            $this->db->or_where_in('username', $names);
            $this->db->or_where_in('firstname', $names);
            $this->db->or_where_in('lastname', $names);
        }
    } else{
        if($names){
            $this->db->where_in('username', $names);
            $this->db->or_where_in('firstname', $names);
            $this->db->or_where_in('lastname', $names);
        }
    }

    $this->db->select('id, username, firstname, lastname');
    $query = $this->db->get('users');

    if($query->num_rows() > 0){
        return $query->result();            
    }

    return FALSE;
Run Code Online (Sandbox Code Playgroud)

这段代码的作用是运行一堆where语句,然后简单地将它们全部发回.也许我可以清理if语句以及电子邮件的工作方式,但这不是重点.这段代码完美无缺(至少对于一个非常小的数据库:P),但我希望它能做得更多:

  • 现在您需要输入正确的名称或电子邮件才能获得任何好结果.如果你几乎是正确的,那么获得一些建议会很好,但我可能会自己想出来做一些喜欢.

  • 我想对整个结果数组进行排序,这就是我磕磕绊绊的地方.由于电子邮件和用户名都是唯一的,我希望使用以下优先级进行搜索:

    1. 电子邮件
    2. 用户名
    3. 名字+姓氏
    4. 名字

好吧暂时我并不关心例如电子邮件+用户名+名字+姓氏,因为我认为这将是压倒性的方式:P

我确实找到了这个主题搜索查询,'按优先顺序',但由于我不知道在我的搜索中它是什么,它并没有真正帮助我,但也许我可以使用类似的东西?

无论如何,你们知道解决优先级问题的方法吗?我是否可能错过了一些可能有用的主要功能?当我的数据库变大时会发生什么?;)

谢谢大家的帮助!

mysql sql search codeigniter

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

标签 统计

codeigniter ×1

construct ×1

mysql ×1

numpy ×1

php ×1

python ×1

search ×1

sql ×1