Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/296.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
Python 如何更改嵌套列表';将列表转换成字符串?_Python - Fatal编程技术网

Python 如何更改嵌套列表';将列表转换成字符串?

Python 如何更改嵌套列表';将列表转换成字符串?,python,Python,例如,如果我的嵌套列表是: [['2HC'], ['4BB'], ['4BB'], ['2HC']] 我如何让['2HC']引用'A'和['4BB']引用'B',这样我的结果将是: ['A', 'B', 'B', 'A'] ['A', 'B', 'B', 'A'] 输出: 输出 ['A', 'B', 'B', 'A'] 您可以展平列表以使其更简单,然后使用简单的转换映射: from itertools import chain nested_vs = [['2HC'], ['4BB']

例如,如果我的嵌套列表是:

[['2HC'], ['4BB'], ['4BB'], ['2HC']]
我如何让
['2HC']
引用
'A'
['4BB']
引用
'B'
,这样我的结果将是:

['A', 'B', 'B', 'A']
['A', 'B', 'B', 'A']
输出:

输出

['A', 'B', 'B', 'A']

您可以展平列表以使其更简单,然后使用简单的转换映射:

from itertools import chain

nested_vs = [['2HC'], ['4BB'], ['4BB'], ['2HC']]

# flatten
vs = chain.from_iterable(nested_vs)

# translate
translations = {'2HC' : 'A', '4BB': 'B'}
translated = list(map(translations.get, vs))
现在,翻译后的
保持:

['A', 'B', 'B', 'A']

此问题的
itertools
解决方案-

data = [['2HC',], ['4BB'], ['4BB'], ['2HC']]
mapping = {'2HC' : 'A', '4BB': 'B'}
l = [mapping[i] for i in itertools.chain.from_iterable(data)]
itertools
的好处是,即使内部列表包含多个元素,它也会将列表数据转换为平面列表

例如,如果列表
数据
为-

[[2HC]、[2HC']、[4BB']、[4BB']、[2HC']


我们仍然可以得到正确的输出。

您尝试过任何脚本吗?如果是的话,你能把它贴在这里吗?
from itertools import chain

nested_vs = [['2HC'], ['4BB'], ['4BB'], ['2HC']]

# flatten
vs = chain.from_iterable(nested_vs)

# translate
translations = {'2HC' : 'A', '4BB': 'B'}
translated = list(map(translations.get, vs))
['A', 'B', 'B', 'A']
data = [['2HC',], ['4BB'], ['4BB'], ['2HC']]
mapping = {'2HC' : 'A', '4BB': 'B'}
l = [mapping[i] for i in itertools.chain.from_iterable(data)]