gpt4 book ai didi

python - 从列表中创建路径文件的名称

转载 作者:太空宇宙 更新时间:2023-11-04 11:03:18 25 4
gpt4 key购买 nike

我想从列表中创建文件路径。

pathList = [['~/workspace'], ['test'], ['*'], ['*A', '*2'], ['*Z?', '*1??'], ['*'], ['*'], ['*'], ['*.*']]

我要

[['', '~/workspace', 'test', '*', '*A', '*Z?', '*', '*', '*', '*.*']]

[['', '~/workspace', 'test', '*', '*A', '*1??', '*', '*', '*', '*.*']]

[['', '~/workspace', 'test', '*', '*2', '*Z?', '*', '*', '*', '*.*']]

[['', '~/workspace', 'test', '*', '*2', '*1??', '*', '*', '*', '*.*']]

我尝试从 for 循环创建它,但我得到了

[['', '~/workspace', 'test', '*', '*A', '*Z?', '*', '*', '*', '*.*', '*1??', '*', '*', '*', '*.*', '*2', '*Z?', '*', '*', '*', '*.*', '*1??', '*', '*', '*', '*.*']]

我该怎么办?请帮助我。

谢谢。

最佳答案

期待下一步——你可以像这样创建路径

>>> import os, itertools
>>> [os.path.join(*x) for x in itertools.product(*pathList)]
['~/workspace/test/*/*A/*Z?/*/*/*/*.*',
'~/workspace/test/*/*A/*1??/*/*/*/*.*',
'~/workspace/test/*/*2/*Z?/*/*/*/*.*',
'~/workspace/test/*/*2/*1??/*/*/*/*.*']

这是一个使用 itertools.starmap 的版本

>>> from itertools import starmap
>>> starmap(os.path.join, itertools.product(*pathList))
<itertools.starmap object at 0xb77d948c>
>>> list(_)
['~/workspace/test/*/*A/*Z?/*/*/*/*.*',
'~/workspace/test/*/*A/*1??/*/*/*/*.*',
'~/workspace/test/*/*2/*Z?/*/*/*/*.*',
'~/workspace/test/*/*2/*1??/*/*/*/*.*']

关于python - 从列表中创建路径文件的名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3438736/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com