Python 在本例中,带逗号的for循环是如何工作的?

Python 在本例中,带逗号的for循环是如何工作的?,python,Python,我在大学里有一个实验室 我已经设法解决了这个问题,但是我在网上看到你可以用逗号和for循环来解决这个问题,我不知道它到底是如何工作的。因此,我感到困惑的是a_dict.items()中x,y的:循环的具体工作原理是什么?逗号是元组解包的一部分。具体来说,a_dict.items()返回一个元组列表,每个元组中的第一项是键,第二项是值。在for循环中,x被设置为键,y被设置为与其关联的值 该声明类似于: def create_dog_breeds_dictionary(dog_breeds_lis

我在大学里有一个实验室

我已经设法解决了这个问题,但是我在网上看到你可以用逗号和for循环来解决这个问题,我不知道它到底是如何工作的。因此,我感到困惑的是a_dict.items()中x,y的
循环的具体工作原理是什么?

逗号是元组解包的一部分。具体来说,
a_dict.items()
返回一个元组列表,每个元组中的第一项是键,第二项是值。在for循环中,
x
被设置为键,
y
被设置为与其关联的值

该声明类似于:

def create_dog_breeds_dictionary(dog_breeds_list, dog_groups_list):
    a_dictionary = dict()
    for x in range(0, len(dog_breeds_list)):
        a_dictionary[dog_groups_list[x]] = list(dog_breeds_list[x].split(","))
    return a_dictionary

def print_key_values_in_order(a_dict):
    for x, y in a_dict.items():
        print(x, y)
在这种情况下,没有特别的理由使用一种或另一种语法,所以请选择对您更具可读性的语法。在某些情况下,元组解包是无法替代的

for key in a_dict.keys():
    print(key, a_dict[key])