为啥不能退出while循环呢

names=[]
name=input("Please input your name:")
active=True
while active:
    
    names.append(name)
    if name !='q':
        print(name)
        
    else:
        activ=False
with open('guest_file.txt','a') as file_name:
    file_name.write('Your name is: '+name+' .\n')

当输入q时为啥不能退出while循环呢?

name赋值未放在while循环内部所致(另外循环中的active变量少打了个e

names=[]
# name=input("Please input your name:")
active=True
while active:

    name=input("Please input your name:")
    names.append(name)
    if name !='q':
        print(name)
        
    else:
        # activ=False
        active=False
with open('guest_file.txt','a') as file_name:
    file_name.write('Your name is: '+name+' .\n')
 

activ=False写错了,是active

while active:
循环的判断条件是这个,你这个值一直是True