Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python中的偏转百分比_Python_Python 3.x - Fatal编程技术网

python中的偏转百分比

python中的偏转百分比,python,python-3.x,Python,Python 3.x,我在GtkMeter的源代码中找到了偏移百分比,并将其转换为python: def iec_scale(db): if (db < -70.0): defr = 0.0 elif (db < -60.0): defr = (db + 70.0) * 0.25 elif (db < -50.0): defr = (db + 60.0) * 0.5 + 5.0 elif (db < -40.0): defr = (db + 50

我在GtkMeter的源代码中找到了偏移百分比,并将其转换为python:

def iec_scale(db):
  if (db < -70.0):
    defr = 0.0
  elif (db < -60.0):
    defr = (db + 70.0) * 0.25
  elif (db < -50.0):
    defr = (db + 60.0) * 0.5 + 5.0
  elif (db < -40.0):
    defr = (db + 50.0) * 0.75 + 7.5
  elif (db < -30.0):
    defr = (db + 40.0) * 1.5 + 15.0
  elif (db < -20.0):
    defr = (db + 30.0) * 2.0 + 30.0
  else:
    defr = (db + 20.0) * 2.5 + 50.0

  return defr

注意,当
db=-50.0
有一个不同的行为时,当
db=-50.1
较小时,它不是大于值而是大于值。

我认为这只是一个输入错误,这里的正确值是

  elif (db < -50.0):
    defr = (db + 60.0) * 0.5 + 2.5     # not +5.0
elif(db<-50.0):
defr=(db+60.0)*0.5+2.5#非+5.0

仔细检查这一行:你是对的,我看的代码也是错的:
  elif (db < -50.0):
    defr = (db + 60.0) * 0.5 + 2.5     # not +5.0