在powershell中,第一次输入为yes时会返回“name”但输入no并再次运行函数时输出None,如何输出‘name’?

print "Now please input your name.\n"
def names():
    name = raw_input(">")
    while not name:
        name = raw_input("\nplease enter your name:")
    print "\nso your name is %r right?\n" % name   
# 从这里开始       
    confirm = raw_input("please enter yes or no:")
    if confirm == "yes":
        print "\nGame start.\n" 
        return name        
# 正常的输出‘name’             
    elif confirm == "no":
        print "\nSo what is your name?\n"
        names()
#再次运行输出‘None’               
    else:
        print "\nplease Enter as prompted!\n"

namess = names()
print namess