Python字典查询课程上机地点:错误分析与代码修复

代码题目: 根据给定的字典,当输入课程名或课程名代码时,输出上机地点,不使用not。

原始代码:

m={'导论':'001','数字逻辑':'002','电路':'003'}
n={'001':'E310','002':'E315','003':'E312'}
for i in range(1,4):
    x=input('输入课程名或代码:')
    if x.isupper():
        print(n.get(x))
    else:
        y=m.get(x)
        print(n.get(y))

错误分析: 在第8行的判断语句中,没有考虑到输入的课程名或代码不在字典中的情况,导致会输出None。应该使用is not None判断字典中是否存在该键值对,如果不存在,输出提示信息。

代码修复:

m={'导论':'001','数字逻辑':'002','电路':'003'}
n={'001':'E310','002':'E315','003':'E312'}
for i in range(1,4):
    x=input('输入课程名或代码:')
    if x.isupper():
        print(n.get(x))
    else:
        y=m.get(x)
        if y is not None:
            print(n.get(y))
        else:
            print('未找到该课程')

代码解释:

  1. 在第8行,我们使用if y is not None:来判断m.get(x)是否返回了None。
  2. 如果y不为None,则表示在字典m中找到了对应的课程代码,然后使用print(n.get(y))输出上机地点。
  3. 如果y为None,则表示在字典m中没有找到对应的课程代码,输出'未找到该课程'的提示信息。

总结: 通过使用is not None来判断字典中是否存在对应的键值对,可以有效地避免出现None输出的错误,并提供更友好的用户提示信息。

Python字典查询课程上机地点:错误分析与代码修复

原文地址: https://www.cveoy.top/t/topic/nYyp 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录