Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在pythonyaml中可以使用元组作为字典键吗?_Python_Dictionary_Yaml - Fatal编程技术网

在pythonyaml中可以使用元组作为字典键吗?

在pythonyaml中可以使用元组作为字典键吗?,python,dictionary,yaml,Python,Dictionary,Yaml,如何在Python YAML中配置此类字典?一个选项是创建YAML文件,如下所示: dictionary = {('x1','y1'): [1,2], ('x2','y2'): [4,5], ('x3','y3'): [6,7]} 要加载它,请执行以下操作: !!python/tuple ['x1','y1']: [1,2] !!python/tuple ['x2','y2']: [4,5] !!python/tuple ['x3','y3']: [6,7] 输出: import yaml

如何在Python YAML中配置此类字典?

一个选项是创建YAML文件,如下所示:

dictionary = {('x1','y1'): [1,2], ('x2','y2'): [4,5], ('x3','y3'): [6,7]}
要加载它,请执行以下操作:

!!python/tuple ['x1','y1']: [1,2]
!!python/tuple ['x2','y2']: [4,5]
!!python/tuple ['x3','y3']: [6,7]
输出:

import yaml

print yaml.load(stream=open("your_file_path", 'r'))
要获得一些价值,您可以使用:

{('x1', 'y1'): [1, 2], ('x3', 'y3'): [6, 7], ('x2', 'y2'): [4, 5]}
如果要测试它是一个元组,只需使用:

yaml_load[('x1', 'y1')]

也许,如果元组中只有字符串,您可以将它们连接起来“u”.join(a_元组)并将结果字符串用作键。是否可以将其转储为以下格式“!!python/tuple['x1','y1']:[1,2]”:{(1,2):[1,2,3]}==yaml.load(yamp.dump({(1,2):[1,2,3]}))
type(yaml_load.keys()[0])