Heim >Backend-Entwicklung >Python-Tutorial >Wie klemme ich Werte innerhalb eines bestimmten Bereichs in Python?
Klemmwerte innerhalb eines angegebenen Bereichs
Problem:
Beachten Sie den folgenden Code:
<code class="python">new_index = index + offset if new_index < 0: new_index = 0 if new_index >= len(mylist): new_index = len(mylist) - 1 return mylist[new_index]</code>
Dieser Code berechnet einen neuen Index, um ein Element aus einer Liste abzurufen. Allerdings ist der Code ausführlich und es mangelt ihm an einer sauberen pythonischen Ästhetik.
Frage:
Gibt es eine prägnantere und pythonische Lösung, um Werte innerhalb eines bestimmten Bereichs zu klemmen?
Antwort:
Ja, es gibt eine kompaktere und pythonische Alternative:
<code class="python">new_index = max(0, min(new_index, len(mylist)-1))</code>
Dieser Code verwendet die Funktionen max() und min() um sicherzustellen, dass der neue Index innerhalb der Grenzen der Liste liegt, ohne dass ausführliche bedingte Anweisungen erforderlich sind.
Diese Lösung ist klar und prägnant und erleichtert das Lesen und Debuggen. Es folgt auch den Best Practices von Pythonic und bietet eine idiomatischere und elegantere Implementierung.
Das obige ist der detaillierte Inhalt vonWie klemme ich Werte innerhalb eines bestimmten Bereichs in Python?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!