How to use script to translate, independently, all control points in a Bezier curve?
After some more research and tests, I got the results I wanted with
import bpy

segs = 7
alt = 1
step = alt / (segs + 1)

bpy.ops.curve.select_all()
bpy.ops.curve.subdivide(number_cuts=(segs - 1))
curve = bpy.context.object
bez_points = curve.data.splines[0].bezier_points

i = 0
for bez_point in bez_points:
    bez_points[i].co.z = (i * step)
    bez_points[i].handle_left.z = (i * step) - (step / 2)
    bez_points[i].handle_right.z = (i * step) + (step / 2)
    i += 1

for bez_point in bez_points:
    bez_point.handle_left_type = 'AUTO'
    bez_point.handle_right_type = 'AUTO'