通过类实例var多次循环不仅一次

时间:2014-05-29 15:10:12

标签: python for-loop

我的循环错误了吗?为什么它只使用fozz的第一次出现而没有遍历fooz的所有30多个对象?任何帮助都非常感谢。感谢。

我有一个var parser,它带来了一个值字典。

然后我有一些内部for()循环,用于交换字典值,并使用类实例var fooz中的值。

fooz有大约30个值。

问题是:目前在循环时仅使用fooz中的1个值。我想针对fooz的所有实例的每个参数使用每个值(请参阅下面的我想要做的事情

例如,在路径上:

somesite.com/id.php?date=052914&param=6&dog=cat

输出:

date=<same fooz object>
param=<same fooz object>
dog=<same fooz object>

循环

for parsed_key, parsed_value in parser.iteritems():
    for parsed_value in parser.iteritems():
        for fooz in foozs:
            parsed_value = str(fooz)
    print parsed_key + '=' + parsed_value

我想做的事情:

date=<fooz object 1>
date=<fooz object 2>
date=<fooz object 3>
...
date=<fooz object 30>

param=<fooz object 1>
param=<fooz object 2>
param=<fooz object 3>
...
param=<fooz object 30>

dog=<fooz object 1>
dog=<fooz object 2>
dog=<fooz object 3>
...
dog=<fooz object 30>

1 个答案:

答案 0 :(得分:2)

你的循环错了。

for parsed_key, parsed_value in parser.iteritems():
    for parsed_value in parser.iteritems():
        # You're already looping on parser.iteritems() why are you
        # trying to do that again??
        for fooz in foozs:
            parsed_value = str(fooz)
            # parsed_value has been every value of fooz, but...
    # by the time you get here you're completely out of all those for loops and
    # Python doesn't care about those inner iterations, it only gives you the
    # last one since that's the last thing you set parsed_value to
    print parsed_key + '=' + parsed_value

尝试:

for parsed_key, parsed_value in parser.iteritems():
    for fooz in foozs:
        parsed_value = str(fooz)
        print parsed_key + '=' + parsed_value