字典键作为单个列表

2024-09-27 00:14:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一本有元组和字符串键的字典。我想把所有的钥匙都列成一张单子

mydict={('google','yahoo'):['gmail','browsing'],'wix':['website'],('chrome','firefox'):['Browsers']}
KeysAsList=[]
for k in list(mydict.keys()):
    if type(k)==tuple:
        for item in k:
            KeysAsList.append(item)
    else:
        KeysAsList.append(k)`
print(KeysAsList)

output=['google', 'yahoo', 'wix', 'chrome', 'firefox']

我希望使用列表理解实现相同的输出。提前感谢。:-)


Tags: 字符串infor字典googlechromefirefoxitem
3条回答

如果键不是元组,则可以将其转换为一项列表:

output = [i for k in mydict for i in (k if isinstance(k, tuple) else [k])]

您可以使用以下列表:

KeysAsList=[k for keys in mydict for k in (keys if isinstance(keys, tuple) else [keys])]

如果仅将字符串元组作为键,则可以使用:

output = [key for tup in mydict for key in tup]

但由于'wix'是一个键,因此必须测试该键是否为元组:

output = [key for tup in mydict for key in (tup if isinstance(tup, tuple) else [tup])]

相关问题 更多 >

    热门问题