Hi again,
I realize that my question was not clear enough, so I've refined it into one 
runnable function (attached below)
My question is basically - is there a way to perform the same operation, but 
faster using NumPy (or even just by using Python better..)
Thanks again and sorry for the unclearness..
Nissim.

import struct

def Convert():
    Endian = '<I' # Big endian
    ParameterFormat = 'f' # float32
    RawDataList = [17252, 26334, 16141, 58057,17252, 15478, 16144, 43257] # 
list of int32 registers
    NumOfParametersInRawData = int(len(RawDataList)/2)
    Result = []
    for i in range(NumOfParametersInRawData):
        # pack every 2 registers, take only the first 2 bytes from each one, 
change their endianess than unpack them back to the Parameter format
        
Result.append((struct.unpack(ParameterFormat,(struct.pack(Endian,RawDataList[(i*2)+1])[0:2]
 + struct.pack('<I',RawDataList[i*2])[0:2])))[0])

_______________________________________________
NumPy-Discussion mailing list
NumPy-Discussion@python.org
https://mail.python.org/mailman/listinfo/numpy-discussion

Reply via email to