2014-08-31 63 views
1

对于此问题,假定已执行以下分配语句。使用获取字典访问

weekdays = {'Sunday':0, 'Monday':1, 'Tuesday':2, 'Wednesday':3, 
      'Thursday':4, 'Friday':5, 'Saturday':6} 

假设变量day包含可以是或可以不是一个日的名称的值。如果day包含一天的名称,并使用-1,则使用get将赋值语句写入day_num日期编号。否则。

例如,如果一天是'Wednesday'然后day_num3并且如果day'Talk Like a Pirate Day'然后day_num应该是-1

这里是我的代码:

day_num = weekdays.get(day) 
if day_num==None: 
    day_num=-1 

我只是不明白为什么它仍然是错误的;我认为是正确的。该作业系统不断显示

你应该只使用一个赋值语句(没有别的)

回答

1

使用两个赋值语句。也许你应该给dict.get()一个第二参数:

day_num = weekdays.get(day, -1) 

这第二个参数是默认的返回如果day是不存在的字典;默认的默认值是None,但这里我改为返回-1

这节省了您对is None的测试和第二项任务。

+0

非常感谢你!我的天啊 – bboychua 2014-08-31 02:29:15