Python 为列表中的每个值返回特定值

Python 为列表中的每个值返回特定值,python,Python,我想为列表中的每个值返回一个特定值 list=['sathya'、'varna'、'summi'] 我想返回这样的值,如果我的键是'sathya'return-5,如果键是'varna'return-4 到目前为止,我的代码是: def return_value(): if key == 'sathya': return -5 if key == 'varna': return -4 但我不想使用这么多if条件。在这方面,有人能帮我吗?使用字典存

我想为列表中的每个值返回一个特定值

list=['sathya'、'varna'、'summi']

我想返回这样的值,如果我的键是'sathya'return-5,如果键是'varna'return-4

到目前为止,我的代码是:

def return_value():
   if key == 'sathya':
         return -5
   if key == 'varna':
         return -4

但我不想使用这么多if条件。在这方面,有人能帮我吗?

使用字典存储值并按键访问

def return_value(key):
    return {'sathya': -5,'varna': -4,'summi': 'any value..'}[key]

使用字典存储值并按键访问

def return_value(key):
    return {'sathya': -5,'varna': -4,'summi': 'any value..'}[key]

尝试使用dict而不是循环检查条件:

list = ['sathya','varna','summi']

name_to_id = {'sathya':-5,'varna':-4,'summi':-3}
for i in list:
    return name_to_id.get(i)

尝试使用dict而不是循环检查条件:

list = ['sathya','varna','summi']

name_to_id = {'sathya':-5,'varna':-4,'summi':-3}
for i in list:
    return name_to_id.get(i)

您正在寻找的基本python数据结构是字典,而不是列表。 字典允许以本机方式进行键值配对。 例如

然后您可以检索您的值

print(d['mykey'])

您正在寻找的基本python数据结构是字典,而不是列表。 字典允许以本机方式进行键值配对。 例如

然后您可以检索您的值

print(d['mykey'])
如果返回值是它们的索引,则可以使用

your_list = ['sathya','varna','summi']
方法1

方法2(使用听写理解)

如果返回值是它们的索引,则可以使用

your_list = ['sathya','varna','summi']
方法1

方法2(使用听写理解)

使用您的
dict()
调用是不必要的
d={akey:aval}
足够您的
dict()
调用是不必要的
d={akey:aval}
就足够了