# Alternative to deepcopy for bpy_struct?

I'm writing a script to animate tex characters morphing from one character to another. To make it look smooth, I want to sort the splines in the spline collection within curve data. I'm running into trouble because bpy_struct (the parent class of spline) is read-only, and the copy methods also don't work on bpy_struct.

A test case that shows the error I get:

import bpy
from copy import deepcopy

obj = bpy.context.object

copied_obj = deepcopy(obj)


The error is bpy_struct.__new__(type): expected a single argument.

If this can't be done easily, it would also help me if there were a way to use list methods on bpy_prop_collection instances, specifically sorting.

My plan right now is to create my own classes that mimic the classes I want to sort/copy, then deal directly with the basic data types. But I would... prefer not to do that if possible.

obj = bpy.context.object