I believe you want to do something like this:
ret = rrdtool.update('temperature.rrd', 'N:%s' % temp)
Each argument in an rrdtool wrapper function should correspond to an argument in the rrdtool cli command. So in your previous example when you were running rrdtool.update with 3 arguments you were actually running something like:
rrdtool update temperature.rrd N: 65.6
the update should be a single argument, so this is really what you wanted:
rrdtool update temperature.rrd N:65.6