Io l'avevo usato a suo tempo, non ricordo particolari problemi c'è una libreria standard da importare, però l'usavo per passare dei dati attraverso i file, nel tuo caso dovresti usare il metodo loads se non ricordo male per interpretare le stringhe, ti allego le due funzioni che mi ero fatto (data era un qualsiasi oggetto, dict, list ecc.):
import pickle
def cPickleParticOutput(file_name, data):
output_f = open(file_name, 'wb')
pickle.dump(data, output_f)
output_f.close()
def cPickleParticInput(file_name):
input_f = open(file_name, 'rb')
data = pickle.load(input_f)
input_f.close()
return data