a = ['m','n']
for x,y in a: #代码1
print(x,'!=',y)
for x,y in (a,): #代码2
print(x,'!=',y)
首先我们来看看您的两个轮询的对象a、(a,),a是列表包含m、n两个字符元素;而(a,)则是包含一个元素的元组,她的实质是(['m','n'],),一个元素就是列表a。
您用x,y轮询a,每次得到一个字符(m、n),无法分配给两个变量(x, y),必然报错。
a = ['m', 'n']
for x,y in a: #代码1
print(x, '!=', y)
而轮询(a,),得到的是['m', 'n'],她有两个字符元素,可以分配给x,y,正常执行print(x, '!=', y)。
for x,y in(a,):
print(x, '!=', y)
m != n