2009-08-09 5 views
3

NumPy와 (나는 생각한다)에 정의 된 개체 Inf를 피클을 시도, 덤핑이 좋아 간다하지만 로딩이 실패 :numpy의 Inf 개체를 피클하는 방법?

>>> cPickle.dump(Inf, file("c:/temp/a.pcl",'wb')) 
>>> cPickle.load(file("c:/temp/a.pcl",'rb')) 
Traceback (most recent call last): 
    File "<pyshell#257>", line 1, in <module> 
    cPickle.load(file("c:/temp/a.pcl",'rb')) 
ValueError: could not convert string to float 
>>> type(Inf) 
<type 'float'> 

이 왜입니까? 그리고 그 문제를 해결할 방법이 있습니까? 내가 거기에 Inf를을 가지고 뭔가 피클 할 - 당신이 0보다 더 피클 프로토콜을 지정하는 경우 ...

감사

답변

5

뭔가 다른 뜻 결함에 프로그램의 우아함을 변경을, 그것을 작동합니다.

y_serial.py 모듈 : : 창고 파이썬 객체 :

>>> cPickle.dump(Inf, file("c:/temp/a.pcl",'wb'), -1) 
>>> cPickle.load(file("c:/temp/a.pcl",'rb')) 
1.#INF     -- may be platform dependent what prints here. 
-1

가 임의의 파이썬 객체에 대해 작동합니다 소스 포지에서이 솔루션을 시도해보십시오 프로토콜은 자주 사용하는 최신의 그리고 최고의 프로토콜을 의미 -1로 지정 with SQLite

"몇 줄의 코드로, Python 객체를 압축하고 주석을 달고 나중에 SQL없이 키워드로 시간순으로 검색하십시오. 데이터베이스를 저장할 가장 유용한"표준 "모듈 - 데이터가 없습니다. "

http://yserial.sourceforge.net