Позвольте мне попытаться объяснить, используя некоторые примеры ...
Вам необходимо пройти словарь какой-то другой процесс питона, который работает из вашего питона среды (возможно, некоторые другие проекта или на другой машине) .. .
somelist = {1:1,2:2,3:3}
Как вы можете передать этот словарь этому процессу? Вы не можете преобразовать его в строку, даже если вы сделали, вы не можете преобразовать его обратно в его первоначальной форме ...
Если солить этот словарь, это даст вам
dumps({1: 1, 2: 2, 3: 3})
'(dp1\nI1\nI1\nsI2\nI2\nsI3\nI3\ns.'
который имеет нитевидные структура ... Таким образом, вы можете отправить это по почте, или что-то еще ... и приемник может unpickle его, чтобы получить исходный объект ...
loads('(dp1\nI1\nI1\nsI2\nI2\nsI3\nI3\ns.')
{1: 1, 2: 2, 3: 3}
Можете ли вы определить «Состояние программы». Что означает государство? @ Ваш пример (который я очень ценю): Вы имеете в виду, например, цикл, который выполняется, например, 1.000.000, и я могу остановиться на 500 000, а не резюме? Это оно? – MacPython
Вы можете безопасные объекты, вы могли бы в вашем примере безопасно встретить счетчик. Генераторы не подбираются. Но если вы хотите аппроксимировать нулевую точку функции с использованием Newton-Approximation, вы можете сохранить свой новейший результат, а затем загрузить его снова, чтобы выполнить еще тысячу циклов. –