这是我的 list :

pos = [['det'], ['noun', 'adj'], ['noun'], ['vb'], ['det'], ['vb', 'noun', 'adj']]

或者
pos = ['det', ['noun', 'adj'], 'noun', 'vb', 'det', ['vb', 'noun', 'adj']]

我正在尝试打印所有组合:
det noun noun vb det vb
det adj noun vb det vb
det noun noun vb det noun
det adj noun vb det noun
det noun noun vb det adj
det adj noun vb det adj

我应该使用递归函数吗?我试过没有结果。

Itertools(排列、乘积、组合)对我没有帮助。

你可以帮帮我吗?

最佳答案

我认为 itertools.product() 实际上就是你要找的:

pos = [['det'], ['noun', 'adj'], ['noun'],
       ['vb'], ['det'], ['vb', 'noun', 'adj']]
for x in itertools.product(*pos):
    print " ".join(x)

打印
det noun noun vb det vb
det noun noun vb det noun
det noun noun vb det adj
det adj noun vb det vb
det adj noun vb det noun
det adj noun vb det adj

关于python - 如何在python中打印嵌套列表的所有可能性?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5553518/

10-10 18:38