Я думаю, вы просто обмениваетесь дампами и нагрузками .
>>> import json
>>> data = [['apple', 'cat'], ['banana', 'dog'], ['pear', 'fish']]
Первая возвращает в виде строки (в кодировке JSON) свой аргумент данных:
>>> encoded_str = json.dumps( data )
>>> encoded_str
'[["apple", "cat"], ["banana", "dog"], ["pear", "fish"]]'
Второй выполняет обратное действие, возвращая данные, соответствующие его (JSON-кодированному) строковому аргументу:
>>> decoded_data = json.loads( encoded_str )
>>> decoded_data
[[u'apple', u'cat'], [u'banana', u'dog'], [u'pear', u'fish']]
>>> decoded_data == data
True