【问题标题】:how to load pickled objects into a list of empty variables?如何将腌制对象加载到空变量列表中?
【发布时间】:2015-11-03 18:48:51
【问题描述】:

我有一个变量名列表和一个腌制对象名称列表:

pickle_var_names = object1, object2   # both empty, which throws an error
pickle_names = ['object1', 'object2']

我希望将pickle_names中调用的泡菜分别加载到pickle_var_names中:

for pickle_var_name,pickle_name in zip(pickle_var_names,pickle_names):
    with open(pickle_name,'r') as pickle_fp:
        pickle_var_name = cPickle.load(pickle_fp)

我如何将变量列表初始化为None,以便以后分配它们?

【问题讨论】:

    标签: python python-2.7 serialization pickle


    【解决方案1】:

    列表是按位置而不是名称来索引的,所以你可以这样做:

    picklevars = []
    picklenames = ['object1', 'object2']
    for picklename in picklenames:
        with open(pickle_name, 'r') as pickle_fp:
            picklevars.append(cPickle.load(pickle_fp))
    

    或者,如果您能够使用字典而不是列表:

    picklevars = {}
    picklenames = ['object1', 'object2']
    for picklename in picklenames:
        with open(pickle_name, 'r') as pickle_fp:
            picklevars[picklename] = cPickle.load(pickle_fp)
    

    【讨论】:

      猜你喜欢
      • 2013-08-18
      • 2010-11-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-08-21
      • 2011-05-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多