Setting radius per point
The python console

In object mode, have added the default bezier curve object

The data part holds curve data

&gt;&gt;&gt; cu = C.object.data


A curve is a set of splines, a spline a set of points to define its shape.  Investigate spline 0

&gt;&gt;&gt; spline = cu.splines[0]


Can auto complete in py console, eg pressing TAB Autocomplete key may differ see console menu or start message

&gt;&gt;&gt; spline.r&lt;tab&gt;
            adius_interpolation
            esolution_u
            esolution_v
            na_type


Hmm radius interpolation, expect a radius property to be on the points, have 2 points

&gt;&gt;&gt; for pt in spline.bezier_points:
...     pt
...     
bpy.data.curves['BezierCurve'].splines[0].bezier_points[0]
bpy.data.curves['BezierCurve'].splines[0].bezier_points[1]


whats the radius of the last

&gt;&gt;&gt; pt.radius
1.0


set to 19 

&gt;&gt;&gt; pt.radius = 19
&gt;&gt;&gt; pt.radius
19.0