标签: nested

如何查询嵌套对象?

使用嵌套对象表示法查询mongoDB时遇到问题:

db.messages.find( { headers : { From: "reservations@marriott.com" } } ).count()
0
db.messages.find( { 'headers.From': "reservations@marriott.com" }  ).count()
5
Run Code Online (Sandbox Code Playgroud)

我看不出我做错了什么.我期望嵌套对象表示法返回与点表示法查询相同的结果.我哪里错了?

syntax nested mongodb bson mongodb-query

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

在C++中转发嵌套类型/类的声明

我最近遇到了这样的情况:

class A
{
public:
    typedef struct/class {...} B;
...
    C::D *someField;
}

class C
{
public:
    typedef struct/class {...} D;
...
    A::B *someField;
}
Run Code Online (Sandbox Code Playgroud)

通常你可以声明一个类名:

class A;
Run Code Online (Sandbox Code Playgroud)

但是你不能转发声明一个嵌套类型,以下导致编译错误.

class C::D;
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

c++ nested class forward-declaration

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

为什么要在C++中使用嵌套类?

有人可以指点我一些很好的资源来理解和使用嵌套类吗?我有一些材料,如编程原理和类似IBM知识中心 - 嵌套类的东西

但我仍然无法理解他们的目的.有人可以帮帮我吗?

c++ nested inner-classes

180
推荐指数
4
解决办法
17万
查看次数

在SQL Server中执行嵌套case语句逻辑的最佳方法

我正在编写一个SQL查询,其中返回的一些列需要根据很多条件进行计算.

我目前正在使用嵌套的case语句,但它变得凌乱.是否有更好的(更有组织和/或可读)的方式?

(我使用的是Microsoft SQL Server,2005)


一个简化的例子:

SELECT
    col1,
    col2,
    col3,
    CASE
        WHEN condition 
        THEN
            CASE
                WHEN condition1 
                THEN
                    CASE 
                        WHEN condition2
                        THEN calculation1
                        ELSE calculation2
                    END
                ELSE
                    CASE 
                        WHEN condition2
                        THEN calculation3
                        ELSE calculation4
                    END
            END
        ELSE 
            CASE 
                WHEN condition1 
                THEN 
                    CASE
                        WHEN condition2 
                        THEN calculation5
                        ELSE calculation6
                    END
                ELSE
                    CASE
                        WHEN condition2 
                        THEN calculation7
                        ELSE calculation8
                    END
            END            
    END AS 'calculatedcol1',
    col4,
    col5 -- etc
FROM table
Run Code Online (Sandbox Code Playgroud)

sql sql-server select nested sql-server-2005

170
推荐指数
7
解决办法
63万
查看次数

Python中的多个"collection.defaultdict"级别

感谢SO的一些优秀人员,我发现了collections.defaultdict可见性和速度提供的可能性.我已经把它们用于成功.

现在我想实现三个级别的词典,两个顶级词典defaultdict和最低词典int.我找不到合适的方法来做到这一点.这是我的尝试:

from collections import defaultdict
d = defaultdict(defaultdict)
a = [("key1", {"a1":22, "a2":33}),
     ("key2", {"a1":32, "a2":55}),
     ("key3", {"a1":43, "a2":44})]
for i in a:
    d[i[0]] = i[1]
Run Code Online (Sandbox Code Playgroud)

现在这可行,但以下,这是所需的行为,不会:

d["key4"]["a1"] + 1
Run Code Online (Sandbox Code Playgroud)

我怀疑我应该声明第二级defaultdict是类型的int,但我没有找到在哪里或如何这样做.

defaultdict首先使用的原因是避免为每个新密钥初始化字典.

还有更优雅的建议吗?

谢谢pythoneers!

python dictionary nested

169
推荐指数
5
解决办法
6万
查看次数

您可以为公用表表达式创建嵌套的WITH子句吗?

WITH y AS (
    WITH x AS (
        SELECT * FROM MyTable
    )
    SELECT * FROM x
)
SELECT * FROM y
Run Code Online (Sandbox Code Playgroud)

这样的事情有用吗?我之前尝试过,但我无法让它发挥作用.

sql t-sql sql-server nested common-table-expression

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

你如何在Python中创建嵌套的dict?

我有2个csv文件.第一个是数据文件,另一个是映射文件.映射文件中有4列:Device_Name,GDN,Device_Type,和Device_OS.数据文件中存在相同的列.

数据文件包含Device_Name填充列的数据,其他三列为空.所有四列都填充在Mapping文件中.我希望我的Python代码来打开这两个文件并为每个Device_Name数据文件,它的映射GDN,Device_Type以及Device_OS从映射文件中值.

我知道当只有2列存在时如何使用dict(需要映射1个)但我不知道如何在需要映射3列时完成此操作.

以下是我尝试完成映射的代码Device_Type:

x = dict([])
with open("Pricing Mapping_2013-04-22.csv", "rb") as in_file1:
    file_map = csv.reader(in_file1, delimiter=',')
    for row in file_map:
       typemap = [row[0],row[2]]
       x.append(typemap)

with open("Pricing_Updated_Cleaned.csv", "rb") as in_file2, open("Data Scraper_GDN.csv", "wb") as out_file:
    writer = csv.writer(out_file, delimiter=',')
    for row in csv.reader(in_file2, delimiter=','):
         try:
              row[27] = x[row[11]]
         except KeyError:
              row[27] = ""
         writer.writerow(row)
Run Code Online (Sandbox Code Playgroud)

它返回Atribute Error.

经过一番研究,我意识到我需要创建一个嵌套的dict,但我不知道如何做到这一点.请帮我解决这个问题,或者按照正确的方向推动我解决这个问题.

python mapping dictionary nested python-2.7

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

在python中提取每个子列表的第一项

我想知道在列表列表中提取每个子列表的第一项并将其附加到新列表的最佳方法是什么.所以,如果我有:

lst = [[a,b,c], [1,2,3], [x,y,z]]
Run Code Online (Sandbox Code Playgroud)

我想拉出一个,1和x并从中创建一个单独的列表.

我试过了:

lst2.append(x[0] for x in lst)
Run Code Online (Sandbox Code Playgroud)

python nested list

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

嵌套类的范围?

我试图理解Python中嵌套类的范围.这是我的示例代码:

class OuterClass:
    outer_var = 1
    class InnerClass:
        inner_var = outer_var
Run Code Online (Sandbox Code Playgroud)

类的创建没有完成,我收到错误:

<type 'exceptions.NameError'>: name 'outer_var' is not defined
Run Code Online (Sandbox Code Playgroud)

尝试inner_var = Outerclass.outer_var不起作用.我明白了:

<type 'exceptions.NameError'>: name 'OuterClass' is not defined
Run Code Online (Sandbox Code Playgroud)

我试图访问静态outer_varInnerClass.

有没有办法做到这一点?

python scope nested class inner-classes

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

如何在Python中创建一组集合?

我正在尝试在Python中创建一组集合.我无法弄清楚该怎么做.

从空集开始xx:

xx = set([])
# Now we have some other set, for example
elements = set([2,3,4])
xx.add(elements)
Run Code Online (Sandbox Code Playgroud)

但我明白了

TypeError: unhashable type: 'list'
Run Code Online (Sandbox Code Playgroud)

要么

TypeError: unhashable type: 'set'
Run Code Online (Sandbox Code Playgroud)

是否可以在Python中拥有一组集合?

我正在处理大量的集合,我希望能够不必处理重复的集合(集合A1,A2,......的集合B,如果Ai = Aj,则会"取消"两个集合)

python collections nested set

111
推荐指数
4
解决办法
5万
查看次数