python-3.x 将音量限制在一定范围内[重复]

li9yvcax  于 2023-02-01  发布在  Python
关注(0)|答案(1)|浏览(148)
    • 此问题在此处已有答案**:

(9个答案)
2天前关闭。
我有一个程序,用python的pulsectl模块来改变电脑的音量,代码如下:

if(distance > self.threshold):
    self.pulse.volume_change_all_chans(self.sink, 0.02)
else:
    self.pulse.volume_change_all_chans(self.sink, -0.02)

使用这段代码会导致最小值为0,最大值可以达到无穷大。我想做的是音量的最大值应该设置为1。它不应该增加,甚至有点超过1。
例如,如果我的当前卷是0.99,而if语句中的条件是True,那么,我的卷更改为1.1。这种情况不应该发生。它应该将最大值增加到1.0。永远不要超过它。
此外,可以通过self.pulse.volume_get_all_chans(self.sink)获得体积值的当前值
我怎样才能做到这一点而不用在python中写太多if else条件。

vh0rcniy

vh0rcniy1#

我怎样才能做到这一点而不用在python中写太多if else条件。
您可以利用maxmin将值保持在某个范围内,而完全不使用任何if,请考虑以下简单示例

RANGE_LOW = 0.0
RANGE_HIGH = 1.0
value = float(input("Provide some value: "))
value = min(value,RANGE_HIGH)
value = max(value,RANGE_LOW)
print("value was set to",value)

相关问题