我将一个函数混合在一起,用于在不同的数字标度之间进行转换,我只是想知道是否有一个数学方程可以表示。或者甚至只是编写此功能的更好方法。
我有一个音频设备,它返回一个源的分贝级别,并将其作为0到144之间的数字返回。该比例表示145个值,介于-60db和+ 12db之间,间隔为每个.5db。
我能想到的最好方法是将-60到+12到list dbAry
,并根据音频设备返回的值选择一个索引。
def convert(self, value):
dbAry = []
a = -60
while a != 12.5:
dbAry.append(a)
a+=0.5
return dbAry[int(value)]
编辑:顺便说一下Python 2.7。
答案 0 :(得分:0)
试试这个:
ans = original_number / 2 - 60
这会将original_number转换为您需要的格式。
测试:
110 / 2 - 60 = -5
144 / 2 - 60 = 12