pickle

    23熱度

    4回答

    我最近改變了我的程序的目錄佈局:以前,我有我的「主」文件夾中的所有模塊。現在,我將它們移動到一個以該程序命名的目錄中,並在那裏放置一個__init__.py來製作一個包。 現在,我在我的主目錄的單個.py文件是用來啓動我的程序,這是非常整潔。 無論如何,試圖醃製文件加載從我的程序的早期版本失敗。我得到了「ImportError:No modules named tools」 - 我想這是因爲我的模

    39熱度

    5回答

    背景:我使用最小構造算法構建了一個表示字典的trie。輸入列表是4.3M utf-8字符串,按照字典順序排序。得到的圖是非循環的,最大深度爲638個節點。我的腳本的第一行通過sys.setrecursionlimit()將遞歸限制設置爲1100。 問題:我希望能夠將我的trie序列化到磁盤,因此我可以將它加載到內存中而無需從頭開始重新構建(大約22分鐘)。我已經嘗試了pickle.dump()和c

    8熱度

    2回答

    爲了避免在開發過程中反覆訪問SOAP服務器,我試圖緩存結果,以便我可以在不查詢服務器的情況下運行我的代碼的其餘部分。 在下面的代碼中,當我嘗試泡泡沫結果時,我得到一個PicklingError: Can't pickle <class suds.sudsobject.AdvertiserSearchResponse at 0x03424060>: it's not found as suds.su

    11熱度

    1回答

    我用cPickle的鹹菜整數列表,使用HIGHEST_PROTOCOL, cPickle.dump(l, f, HIGHEST_PROTOCOL) 當我嘗試這個使用下面的代碼來unpickle,我得到一個引發EOFError。在嘗試取消之前,我嘗試「尋求」抵消0,但錯誤仍然存​​在。 l = cPickle.load(f) 任何想法?

    3熱度

    1回答

    我有以下型號: class User < ActiveRecord::Base has_one :profile, :dependent => :destroy def before_create self.profile ||= Profile.new end end class Profile < ActiveRecord::Base

    24熱度

    3回答

    我試圖醃一個我定義的(新風格)類的對象。但我發現了以下錯誤: >>> with open('temp/connection.pickle','w') as f: ... pickle.dump(c,f) ... Traceback (most recent call last): File "<stdin>", line 2, in <module> File "/usr

    1熱度

    1回答

    當如何定義某一類對象應該通過__setstate__被拆封,我推測,它是安全的 def __setstate__(self, dict_returned_by_pickle): self.__dict__.update(dict_returned_by_pickle) 當醃製狀態是一本字典。這是我在answer here on stackoverflow中看到的。 但是,這是一個安全

    71熱度

    7回答

    我需要保存到磁盤有點dict對象的密鑰的類型str和值是int s 然後恢復它。這樣的事情: {'juanjo': 2, 'pedro':99, 'other': 333} 什麼是最好的選擇,爲什麼?用pickle或simplejson將其序列化? 我正在使用Python 2.6。

    1熱度

    3回答

    你能幫助我做這個例子嗎? 我想加載一個序列化的字典,如果它存在,修改它並轉儲它。我認爲我用於打開文件的模式存在問題,但我不知道正確的方法。 import os import cPickle as pickle if os.path.isfile('file.txt'): cache_file = open('file.txt', 'rwb') cache = pickle

    2熱度

    3回答

    我使用泡沫https://fedorahosted.org/suds/來使用SOAP獲取數據。我想緩存結果(使用memcached)不要從我要提取數據的地方重載服務器。問題是在獲取緩存的數據時。獲取它工作正常,但隨後的Django試圖將數據(force_unicode)解碼和它失敗,出現以下: The string that could not be encoded/decoded was: ar