为啥加上第三句和不加上第三句打印出来的结果不一样?不都是创建一个字典吗?

def build_profile(first,last,**user_info):
    """创建一个字典其中包含我们知道有关用户的一切"""
    #user_info={}
    user_info['first_name']=first
    user_info['last_name']=last#user_info就是那个字典
    return user_info
user_profile=build_profile('albert','einstein',
                           location='princeton',
                           field='physics')#使用任意数量的关键字实参
print(user_profile)

肯定不一样啊   第三行不注释的时候  **user_info不会接受其他传参  函数体内赋值  是定值   注释掉后user_info参数是从传进的参数依次赋值的