m0_66754108 2022-05-10 23:03 采纳率: 72.7%
浏览 2034
已结题

python中flag 用法

我问下这里为什么要加 flag=False和flag=True,有谁能帮忙解释下吗?

def delete():
while True:
student_id=input('请输入要删除学生的ID:')
if student_id!='':
if os.path.exists(filename):
with open(filename,'r',encoding='utf-8')as file:
student_old=file.readlines()
else:
student_old=[]
flag=False
if student_old:
with open(filename,'w',encoding='utf-8')as wfile:
d={}
for item in student_old:
d=dict(eval(item))
if d['id']!=student_id:
wfile.write(str(d)+'\n')
else:
flag=True
if flag:
print(f'id为{student_id}的学生已被删除')
else:
print(f'没有找到ID为{student_id}的学生信息')
else:
print('无学生信息')
break

  • 写回答

1条回答 默认 最新

  • 溪风沐雪 2022-05-10 23:37
    关注

    大概看了一下功能是要删除一个学生信息,用flag是为了区分两种对立的情况一种是找到了,然后删除,另一种是没找到,后边需要根据前边的操作结果打印处理结果信息,所以需要一个标志变量来记录前边的处理结果,当然你可以在给flag赋值的地方直接打印处理信息,这只是一种处理方式,不是必须的

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

    报告相同问题?

    问题事件

    • 系统已结题 5月19日
    • 已采纳回答 5月11日
    • 创建了问题 5月10日

    悬赏问题

    • ¥50 vue-codemirror如何对指定行 指定位置的 字符进行背景颜色或者字体颜色的修改?
    • ¥15 有人会思科模拟器嘛?
    • ¥30 遇到一个的问题,请教各位
    • ¥20 matlab报错,vflux计算潜流通量
    • ¥15 我该如何实现鼠标按下GUI按钮时就执行按钮里面的操作的方法
    • ¥15 关于#硬件工程#的问题:我这边有个锁相环电路没有效果
    • ¥15 20款 27寸imac苹果一体机装win10后,蓝牙耳机和音响放歌曲卡顿断断续续.
    • ¥15 VB.NET 父窗体调取子窗体报错
    • ¥15 python海龟作图如何改代码使其最后画出来的是一个镜像翻转的图形
    • ¥15 我不明白为什么c#微软的官方api浏览器为什么不支持函数说明的检索,有支持检索函数说明的工具吗?