Chr*_*580 0 python string zip list concatenation
在 Python 中,我收到了这样的 zip 类型作为输入:
[
('ef', ['c', 'b', 'a']),
('a', ['b']),
('ab', ['c']),
('b', ['c']),
('c', ['c', 'a']),
]
Run Code Online (Sandbox Code Playgroud)
我必须连接同一项目中的元素并创建一个新的字符串列表。预期输出是:
['efc', 'efb', 'efa', 'ab', 'abc', 'bc', 'cc', 'ca']
Run Code Online (Sandbox Code Playgroud)
请注意,第一个元素生成三个不同的字符串,最后一个元素生成两个字符串。问题在于这些项目,因为它有多个元素需要连接。我尝试使用 join 命令,但它不起作用。任何帮助,将不胜感激。
使用嵌套理解:
>>> zipped = [
('ef', ['c', 'b', 'a']),
('a', ['b']),
('ab', ['c']),
('b', ['c']),
('c', ['c', 'a']),
]
>>> [pre + s for pre, suf in zipped for s in suf]
['efc', 'efb', 'efa', 'ab', 'abc', 'bc', 'cc', 'ca']
Run Code Online (Sandbox Code Playgroud)
如果乍一看理解没有意义,请将其视为嵌套for
循环:
>>> for pre, suf in zipped:
... for s in suf:
... print(pre + s)
...
efc
efb
efa
ab
abc
bc
cc
ca
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
219 次 |
最近记录: |