我正在與戴森風扇合作,並試圖編寫一個可以提高風扇速度的功能。枚舉對象FanSpeed具有以下成員。當I [在風扇速度打印(ⅰ),其中i]執行我得到:如何爲枚舉對象實現遞增函數?
FanSpeed.FAN_SPEED_1
FanSpeed.FAN_SPEED_2
FanSpeed.FAN_SPEED_3
FanSpeed.FAN_SPEED_4
FanSpeed.FAN_SPEED_5
FanSpeed.FAN_SPEED_6
FanSpeed.FAN_SPEED_7
FanSpeed.FAN_SPEED_8
FanSpeed.FAN_SPEED_9
FanSpeed.FAN_SPEED_10
所以第一個枚舉對象(以上)的名稱爲FAN_SPEED_1(FanSpeed.FAN_SPEED_1.name
),並且具有的 「0001」(FanSpeed.FAN_SPEED_1.value
)的值,等等。
設定速度函數(在本例中是5):
fan.set_configuration(fan_mode=FanMode.FAN, fan_speed=FanSpeed.FAN_SPEED_5)
我不能找出如何編寫獲取當前速度的函數,然後將其設置爲一個較高的水平。我試過了:
1 /將枚舉對象作爲一個字符串處理,並用一個較高的數字(字符類型)替換最後一個字符。儘管這種方法不適用於枚舉對象。
2尋找某種類型的增量或下一個函數,但這些似乎並不存在枚舉對象。
如何從風扇配置訪問當前速度?你可以在你的列表中搜索這個結果的索引,然後增加/減少1或更多 – PRMoureu
另一個重複,但使用不同的技術:['獲取下一個枚舉器常量/屬性](https://stackoverflow.com/a/35905666/208880) –
就我個人而言,我發現這個問題和答案更簡潔,更容易圍繞我的頭,而不是引用作爲副本。 – MikeyE