如何修复python中字典代码中的运行时错误?

如何修复python中字典代码中的运行时错误?,python,dictionary,runtime-error,Python,Dictionary,Runtime Error,我正在完成为期30天的hackerrank挑战。问题是:给定姓名和电话号码,组装一个电话簿,将朋友的姓名映射到他们各自的电话号码。然后,您将获得一个未知数量的姓名,以查询您的电话簿。对于每个查询的项目,以name=phoneNumber的形式在新行上打印电话簿中的相关条目;如果未找到的条目,请改为“未找到打印”。我成功地通过了除1之外的所有测试用例,当numberOfEntries为1000时,我遇到了一个运行时错误。我该如何解决这个问题 numberOfEntries = int(input(

我正在完成为期30天的hackerrank挑战。问题是:给定姓名和电话号码,组装一个电话簿,将朋友的姓名映射到他们各自的电话号码。然后,您将获得一个未知数量的姓名,以查询您的电话簿。对于每个查询的项目,以name=phoneNumber的形式在新行上打印电话簿中的相关条目;如果未找到的条目,请改为“未找到打印”。我成功地通过了除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,所以谢谢

将电话号码转换为
int
似乎有风险,如果它以
0
开头会怎样?我同意@Nick的观点,而且,电话号码也可以由类似
+
(国家代码)的字符组成,这些字符不能转换为
int