小编Ter*_*row的帖子

在字典中列出,在Python中循环

我有以下代码:

    TYPES = {'hotmail':{'type':'hotmail', 'lookup':'mixed', 'dkim': 'no', 'signatures':['|S|Return-Path: postmaster@hotmail.com','|R|^Return-Path:\s*[^@]+@(?:hot|msn)','^Received: from .*hotmail.com$']},
             'gmail':{'type':'gmail', 'lookup':'mixed', 'dkim': 'yes', 'signatures':['|S|Subject: unsubscribe','','','']}
            }

    for type_key, type in TYPES.iteritems():
        for sub_type_key, sub_type in type.iteritems():
            for sig in sub_type['signatures']:
                if ("|S|" in sig):
                    #String based matching
                    clean_sig = sig[3:len(sig)]
                    if (clean_sig in file_contents):
                        sig_match += 1
                elif ("|R|" in sig):
                    clean_sig = sig[3:len(sig)]
                    #REGMATCH later
            if (sig_match == sig.count):
                return sub_type['type']

     return None
Run Code Online (Sandbox Code Playgroud)

但是,它会生成错误:

for sig in sub_type['signatures']:
TypeError: string indices must be integers, not str
Run Code Online (Sandbox Code Playgroud)

我假设它会看到列表从字典元素中拉出来,并允许我循环它? …

python dictionary list

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

字典列表,在字典中 - 在Python中

我有一个案例,我需要以编程方式构造以下结构(是的我知道.setdefault和defaultdict但我无法得到我想要的)

我基本上需要一个字典,在循环中创建一个字典字典.一开始,结构完全是空白的.

结构示例(请注意,我想在代码中创建一个具有此结构的数组!)

RULE = {
     'hard_failure': {
        4514 : {
           'f_expr' = 'ABC',
           'c_expr' = 'XF0',
     }
    }
   }
Run Code Online (Sandbox Code Playgroud)

需要创建此代码的伪代码:

...
self.rules = {}
for row in rows:
     a = 'hard_failure'
     b = row[0] # 4514
     c = row[1] # ABC
     d = row[2] # XF0
     # Universe collapse right after
     self.rules = ????
...   
Run Code Online (Sandbox Code Playgroud)

上面的代码显然不起作用,因为我不知道该怎么做!

python dictionary nested list

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

标签 统计

dictionary ×2

list ×2

python ×2

nested ×1