I don't have an answer, but I may be familiar with the issue that you are seeing with regard to the psutil command not showing the CPU temp correctly. I recently found a possible bug with the psutil command, which in my situation was reporting the temperature of the Dallas DS18B20 temp sensor that I had connected to my raspberry pi's GPIO (as an enclosure sensor for my Octoprint setup). This was causing an issue where a particular Octoprint plugin was reporting the CPU temp as "0" due the the way that it was coded.
This is a link to the issue I filed on github with the plugin developer:
https://github.com/StefanCohen/OctoPrint-Dashboard/issues/148
He isn't planning to fix the issue at this time, since he believed that it is a bug in the way that the PSUTIL command is implemented. I may submit an issue on this at some point, but right now I am trying to hack together a fix for the plugin myself (essentially using the vcgencmd method of checking the CPU temp).
As a reference, this is what I get when I run the pusutil.sensors_temperature(fahrenheit=False) command:
>>> import psutil
>>> print(psutil.sensors_temperatures(fahrenheit=False))
{'w1_slave_temp': [shwtemp(label='', current=27.187, high=None, critical=None)]}
>>>
While the following is what I get when I run the same command on a test pi that DOES NOT have the Dallas temperature sensor connected (this is the response that should have come):
>>> import psutil
>>> print(psutil.sensors_temperatures(fahrenheit=False))
{'cpu-thermal': [shwtemp(label='', current=51.54, high=None, critical=None)]}
>>>
psutil.sensors_temperatures()
please to your question? Its possibly one core running hot vs an average...psutil.sensors_temperatures()
.