如何打印我认为是对象的内容?

2024-05-06 08:29:42 发布

您现在位置:Python中文网/ 问答频道 /正文

test = ["a","b","c","d","e"]

def xuniqueCombinations(items, n):
    if n==0: yield []
    else:
        for i in xrange(len(items)-n+1):
            for cc in xuniqueCombinations(items[i+1:],n-1):
                yield [items[i]]+cc

x = xuniqueCombinations(test, 3)
print x

输出

"generator object xuniqueCombinations at 0x020EBFA8"

我想看看它找到的所有组合。我该怎么做?


Tags: intestforlenifobjectdefitems
3条回答

leoluk是对的,你需要迭代它。但以下是正确的语法:

combos = xuniqueCombinations(test, 3)
for x in combos:
    print x

或者,可以先将其转换为列表:

combos = list(xuniqueCombinations(test, 3))
print combos

这是一个生成器对象。通过迭代访问它:

for x in xuniqueCombinations:
    print x
x = list(xuniqueCombinations(test, 3))
print x

将生成器转换为列表,然后打印。。。。。。

相关问题 更多 >