Используйте модуль соления .
import pickle
d = { "abc" : [1, 2, 3], "qwerty" : [4,5,6] }
afile = open(r'C:\d.pkl', 'wb')
pickle.dump(d, afile)
afile.close()
#reload object from file
file2 = open(r'C:\d.pkl', 'rb')
new_d = pickle.load(file2)
file2.close()
#print dictionary object loaded from file
print new_d
Избегать файла с выделенным кодом в основном должны быть ориентированы на людей, следующих за MVVM. Мое мнение таково: наличие бизнес-логики в коде оставляет ваши View и ViewModel зависимыми друг от друга (прямо или косвенно).
Если вы ограничиваете логику code-behind только поведением самого представления, тогда вы можете полностью взаимодействовать со своим приложением через ViewModels. Это также подразумевает, что если вам удастся каким-то образом поместить бизнес-логику в сам xaml (не делегированный обратно в ViewModel), это также неправильно.
Чтобы ответить на вопрос более прямо: я вижу «сделать все в XAML», как привязать все к вашей ViewModel / всей бизнес-логике в ViewModel.
Я думаю, что причина того, почему большинство программистов (особенно тех, кто практикует MVVM) не вставляет код в файлы с выделенным кодом, заключается в использовании привязки данных в XAML, что, я думаю, намного проще, чем делать это программно. Также, возможно, разработчикам и дизайнерам будет легче работать вместе, используя XAML (например, заполнить данными времени разработки).