表示一个字典,该字典返回py中的字符串和值列表



我是python的新手,也是使用类型的新手。我有一个函数,它返回一个字典,其中key是字符串,value是字符串列表。我想知道使用类型来表达这一点的正确方式是什么。

样本输出

{"lebron": ["king","goat","bron"], "jordan": ["clutch", "goat", "bulls"]}

代码

from typing import Any, Dict, List
def foo_bar() -> Dict[str, Any]:
my_map: Dict[str, Any] = {}
# some stuff happens
return my_map

def foo_bar() -> Dict[str, List[str]]:
my_map: Dict[str, List[str]] = {}
# some stuff happens
return my_map

我已经发布了两种方法,一种是更具体的Dict[str, List[str]],但我从未见过有人在任何地方使用它,所以我不确定它是否正确。

是的,两种类型注释都是正确的。为了更具体,您应该更喜欢使用Dict[str, List[str]]

附录:在这种情况下,特异性更可取,在其他情况下,一般性可能更可取。

无需遵循python中定义变量的古老方式。Python本身负责处理数据类型。只做

a = dict()

a = {}

然后

a["mylist1"] = ["item1", "item2"]
b["mylist2"] = ["item1", "item2"]

但是你发布的方法也是正确的。

首先定义一个函数,它接受字符串和值。在第二行启动字典。在第三步中,您可以直接开始为关键点指定值。

def foo_bar(string, val):
my_map = dict()
my_map[string] = val 
return my_map

在这种情况下,字符串是密钥,val是值

所以在你的情况下

my_map = dict()
my_map["lebron"] = ["king","goat","bron"]
my_map["jordan"]: ["clutch", "goat", "bulls"]
print(my_map)

它必须提供所需的输出。

相关内容

  • 没有找到相关文章

最新更新