【问题标题】:How to access a specific string from pickle loaded file?如何从pickle加载的文件中访问特定的字符串?
【发布时间】:2020-02-05 00:03:17
【问题描述】:

我有一组模型 pickle 文件,我正在将其加载到 for 循环中的一个新变量中,并且我能够打印出每个 pickle 文件中包含的所有数据。如何访问加载的泡菜文件数据中的特定字符串?

代码:

 model_files=["models/Model_1.pkl", "models/Model_2.pkl", "models/Model_3.pkl", \
              "models/Model_4.pkl", "models/Model_5.pkl", "models/Model_6.pkl"]

for i in range(len(model_files)):
    infile = open(model_files[i], 'rb')
    model = pickle.load(infile)
    infile.close()
    print(model)

print(model) 1 个泡菜文件的输出:

LogisticRegression(C=1.0, class_weight=None, dual=False, fit_intercept=True,
               intercept_scaling=1, l1_ratio=None, max_iter=100,
               multi_class='warn', n_jobs=None, penalty='l1',
               random_state=1222, solver='warn', tol=0.0001, verbose=0,
               warm_start=False)

我想访问"LogisticRegression" 字符串。

【问题讨论】:

  • 从您的问题中无法判断 model 到底是什么。请edit您的问题并提供更多详细信息。
  • Model 是我加载pickle文件内容的新变量。
  • 很明显,我们需要知道变量model种类是什么——它的类型是什么?为了回答您的问题,了解这一点非常重要。它看起来不像一个字符串,它看起来更像是某个未定义类的实例。

标签: python pickle


【解决方案1】:

试试这个:

for i in range(len(model_files)):
    infile = open(model_files[i], 'rb')
    model = pickle.load(infile)
    infile.close()
    print(type(model).__name__)

这将为您提供类名,在本例中为 'LogisticRegression'

【讨论】:

    猜你喜欢
    • 2012-04-04
    • 1970-01-01
    • 2011-03-01
    • 2018-10-22
    • 1970-01-01
    • 1970-01-01
    • 2023-03-27
    • 2019-06-21
    • 1970-01-01
    相关资源
    最近更新 更多