python 字典练习 记录学生是否交作业的小程序

#记录学生是否交作业的小程序

#包括:学生名字、日期、状态

 1 data={
 2   'taotao':{
 3       '2018-6-3':'已交',
 4       '2018-6-4':'未交',
 5       '2018-6-5':'已交'
 6     }  
 7    'mingming':{
 8       '2018-6-3':'未交',
 9       '2018-6-4':'已交'  
10     } 
11 }

#1、判断名字和日期是否必填

#2、构造小字典{data:status}

#3、把构造好的小字典和以前那个合并到一起

1 for i in range(5):
  name=input('name:').strip()  #必填
  date=input('date:').strip()  #必填
  status=input('status:').strip()  #该项在输出时可不填写,如果未填,代表未交
  if name and date:
    status='已交' if status else '未交'  #三元表达式
    if name in data: #判断这个学生是否存在
      date[name][date]=status #给已存在的学生添加日期和状态
    #如果name在字典data中,将status赋值给对应学生

    else:  #学生不存在的话,我们需要给添加该学生
      date[name]={date:status}
    #如果name不在字典里,则将date和date的值status赋给name新建

    print('添加之后的',data)
  else:
  print('学生名字和日期必须写!')

三元表达式

'值1' if 条件 else '值2'

判断条件满足的情况下,选择值1,不满足的情况下,选择值2

若条件为一个变量,如上述例子表示  :

status='已交' if status else '未交'  #如果非空,则选择'已交',为空选择'未交'

posted @ 2018-06-07 15:38  Miyuki蛋卷  阅读(771)  评论(0编辑  收藏  举报