从Tup获取值

2024-05-19 09:15:15 发布

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

我是python新手,我正在寻找解决我的问题的方法:- 我有一个元组,比如:

MY_TUPLE_CHOICE = (
    ('INS', 'Instagram'), 
    ('FAB', 'Facebook'),
    ('YOU', 'Youtube'),
    ('TWT', 'Twitter'),
)

现在,首先我想得到一个带Key inside Value的元组值,例如,如果一个Key是'YOU'它应该返回我('YOU','Youtube')

其次,我想在Tuplevalue中获取一个单独的值,例如key is'YOU'它应该返回我'Youtube'


Tags: 方法keyyoufacebookyoutubemytwitterinstagram
3条回答

你可以用听写理解能力来做一个听写。

abbr_dict = {item[0]: item for item in MY_TUPLE_CHOICE}

首次操作:

>>>abbr_dict["YOU"]
('YOU', 'Youtube')

第二次手术

>>>abbr_dict["YOU"][1]
'Youtube'

假设您必须使用tuple,并且不能将数据结构更改为dict,则可以使用以下命令:

MY_TUPLE_CHOICE = (
    ('INS', 'Instagram'),
    ('FAB', 'Facebook'),
    ('YOU', 'Youtube'),
    ('TWT', 'Twitter'),
)

def get_from_tuple(my_tuple, key):
    try:
        return next(y for x, y in my_tuple if x == key)
    except StopIteration:
        return None

print(get_from_tuple(MY_TUPLE_CHOICE, 'YOU'))  # Youtube
print(get_from_tuple(MY_TUPLE_CHOICE, 'ASD'))  # None

也就是说,请注意任务的需求和数据类型对于adictionary的使用是理想的。如果你被允许使用一个,只要用dict(MY_TUPLE_CHOICE)转换你的元组。

应该使用字典而不是元组:

d = dict(MY_TUPLE_CHOICE)

现在可以逐个访问每个键的值,例如d['YOU']将返回'Youtube'

如果您真的需要第一部分,即返回给定key(key, value)对,您可以简单地使用(key, d[key])

相关问题 更多 >

    热门问题