python - 如何在 python 中修复我的字典代码中的运行时错误?
问题描述
我正在完成为期 30 天的hackerrank 挑战。这就是问题:给定姓名和电话号码,组装一个电话簿,将朋友的姓名映射到他们各自的电话号码。然后,您将获得未知数量的姓名来查询您的电话簿。对于每个查询,将电话簿中的相关条目以 name=phoneNumber 形式打印在新行上;如果找不到条目,则打印 Not found 代替。我设法通过了除 1 之外的所有测试用例,当 numberOfEntries 为 1000 时出现运行时错误。我该如何解决这个问题?
numberOfEntries = int(input())
phoneBook = dict()
for i in range(0,numberOfEntries):
entry = input()
temp = entry.split(" ")
phoneBook[temp[0]] = int(temp[1])
for index, item in enumerate(phoneBook):
query = input()
if index == numberOfEntries:
break
if query in phoneBook.keys():
print(f"{query}={phoneBook[query]}")
else:
print("Not found")
解决方案
谢谢大家的意见。原来我唯一需要做的是:
numberOfEntries = int(input())
phoneBook = dict()
for i in range(0,numberOfEntries):
entry = input()
temp = entry.split(" ")
phoneBook[temp[0]] = int(temp[1])
for index, item in enumerate(phoneBook):
try:
query = input()
if index == numberOfEntries:
break
if query in phoneBook.keys():
print(f"{query}={phoneBook[query]}")
else:
print("Not found")
except:
break
我一定会编辑代码以确保它也接受运算符和 0,所以谢谢!
推荐阅读
- javascript - 将可观察对象的一部分作为输入传递给角度分量时出错?
- celery - 气流尝试使用工人 ID 而不是 URL 访问 celery 工人
- java - 系统找不到Eclipse中指定的路径(Web项目)
- git - git push -u master branch 应该是 git push -u origin branch
- python - 出于某种原因,字符串值作为对 Python lambda 的引用传入
- android - 有没有什么简单的方法可以在 NativeScript/Angluar 中为 IOS 和 Android 创建后台任务?
- pytest - 如何在 pytest-html 报告中添加标记
- facebook - Facebook ID 匹配 API 说令牌无效
- r - 在 geom_bar(aes()) 而不是 ggplot(aes()) 中传递变量时反转标签排序
- android - 为什么每次运行项目时我的 BuildConfig 类都会重复