为什么在一个函数内,循环结束后,不能再次让用户输入信息呢?

问题遇到的现象和发生背景
问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

img


为什么在循环结束后,让用户输入这一行代码标阴影了呢?我定义该函数的目的就是先判断用户输入的身份证是否正确,然后再让用户输入名字,输入名字这一需求不需要循环,最后再判断用户是否年满十八周岁(改项目加循环)。

程序的逻辑, 看起来有些乱
输入的身份证, 不需要保存吗?
调用的方法,
一种是你的主程序, 判断身份证正确后,再进行名字和年龄录入。如下图

img

另一种是 不要在代码里返回True 。

img