在Python中打开许多级别元组

时间:2015-10-16 06:24:05

标签: python dictionary tuples

我有两个词典:

nums = {u'+123456789': [u'google.com', u'yahoo.com', u'183.6.43.21'], u'+9876543210': [u'amazon.com', u'yahoo.com', u'bit.ly'] ... }

包含与此号码相关联的电话号码和域名

availability = {u'yahoo.com': 0.3, u'amazon.com': 0.0, u'183.6.43.21': 0.0, u'bit.ly': 0.9, u'google.com': 1.0}

我需要将这些词典附加在一起,因此我可以向每个电话号码发送短信,其中包含可用域名的文本。

我创造了一个可以做到这一点的功能:

for key, value in nums.iteritems(): 
    for domain, av in availability.iteritems():
        if domain in value:
            if key in dct:
                a = dct[key], domain
                dct.update({key: a})
            else:
                dct[key] = domain

for key in dct:
    send_to(phone=key, text=dct[key])

它有效,但是当nums中唯一一个附加到电话号码的域时 - 它以字符串形式出现,有时输出看起来像这样:

Send to:  +1234567890
(((u'183.23.45.65', u'google.com'), u'yahoo.com'), u'bit.ly')

有没有办法用唯一的一层生成元组?或者最好的方法是递归打开这个元组?

0 个答案:

没有答案