【问题标题】:Python Programming errorPython编程错误
【发布时间】:2018-06-01 06:29:42
【问题描述】:

下面是我的代码。

print("Preprocessing data...")
with multiprocessing.Manager() as manager:

    results = manager.dict()

    preprocess_training = Process(target=preprocess, args=(
        results, "data\\train.csv", False, "train", min_occurrences, train_data_file_name,))

    preprocess_testing = Process(target=preprocess, args=(
        results, "data\\test.csv", True, "test", min_occurrences, test_data_file_name,))

    preprocess_training.start()
    preprocess_testing.start()
    print("Multiple processes started...")

    preprocess_testing.join()
    print("Preprocessed testing data...")

    preprocess_training.join()
    print("Preprocessed training data...")

    training_data = results["train"]
    testing_data = results["test"]

    print("Data preprocessed & cached...")

我收到以下错误

文件 "C:\Users\Samad\Anaconda3\lib\multiprocessing\managers.py", 第 772 行,在 _callmethod 中 raise convert_to_error(kind, result)

KeyError:“火车”

如何解决?

【问题讨论】:

  • 您的results 字典中没有train 键。
  • 查看results.keys()的输出,看看是否有"train"
  • 显示这些空的 [];我还能做什么?

标签: python keyerror


【解决方案1】:

如果它没有在字典中设置,你可以捕获异常:

try:
    training_data = results["train"]
    testing_data = results["test"]
except KeyError as ex:
    print("Missing key in dictionary : {}".format(ex))

请求宽恕比请求许可更像是蟒蛇。

【讨论】:

    猜你喜欢
    • 2018-04-07
    • 2021-03-12
    • 2018-08-08
    • 1970-01-01
    • 2016-01-19
    • 1970-01-01
    • 2015-02-04
    • 1970-01-01
    • 2017-05-30
    相关资源
    最近更新 更多